JAVA関連のことを調べてみた2020年08月29日

JAVA関連のことを調べてみた2020年08月29日

[Java]Collectionへの要素の追加をコンパイルエラーにする

JavaのCollectionは、中身が変更できるかどうかは実装に委ねられています。
そのCollectionが変更できるかどうかは、ソースコードを確認するか、実際に動かしてみるまでわかりません。

例えばListインターフェースのjavadocには、次のように記載されています。

– [日本語](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/List.html#add(E), “日本語”)

> UnsupportedOperationException – addオペレーションがこのリストでサポートされない場合

– [英語](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html#add(E), “English”)

> UnsupportedOperationException – if the add operation is not supported by this lis

元記事を表示

3年目の今、気がつかされた誤解equalsメソッドと==の違い

# **誤解してました。**
今から、大体3年前くらい・・

言語のげの字も知らないような知識空っぽでJAVAでの開発プロジェクトに参画したとき・・

JAVAの教科書で学びながら、開発案件でセコセコ、コーディング・・

プルリク・・ダメ出し・・教科書・・修正・・プルリク・・ダメ出し・・修正・・google・・ダメ出し・・

そんな状態で働いてました。

そのとき、先輩に言われた一言・・

ずっと、脳裏に残っているのでしょうね。

### **Stringの比較は、equalsメソッドを使ってね。**

先輩の一言は正しいです。

だけど、日本語は難しい・・

ほんの少しの捉え方で、悪くも、善くもなるようです。

思わぬことに、こんな風に覚えちゃったんです・・

**「Stringの比較は、equalsメソッドを使ってね。」 == 「Stringの比較の時だけequalsメソッドを使う。」**

それから数ヶ月して、Oracle認定の

元記事を表示

MPAndroidChartで棒グラフを作ったらx軸ラベルがなぜかずれた話

#はじめに
たまたま機会がありAndroid Studioを用いて簡単なアプリ開発を行いました。
その中でグラフを書きたいと思い調べたところ「MPAndroidChart」というライブラリを用いればいいことがわかり、いくつかのサイトを参考にしながら棒グラフを作りました。
しかしその中でx軸のラベル設定がうまくいかず小一時間ほど苦労したので、その過程と解決策を記しておきます。
(余力があれば後から実際動かした画像も貼りたいところです)

#困った部分

今回の問題に関係ない部分は大分端折っていますが、大枠は以下のような感じ。
こちらの記事を参考にさせていただいています。

『MPAndroidChartでシンプルな棒グラフの作成』
https://qiita.com/iKimishima/items/7fd192a074739cf5290b

“` MainActivity.java
public class MainActivity extends AppCompatActivity {

protected BarChart chart;

@Override

元記事を表示

【忘備録】Java : 目的別に見るListの処理の速さ

# はじめに
コレクションとは`ArrayList`や`LinkedList`等の複数の要素を格納することができる箱。
今回は下記2つのコレクションについて書いていく。参考書に答えは書いてあるが自分で試して体感しておきたいと思います。出来たら配列とも比較していく。
・`ArrayList`
・`LinkedList`

# 結論
追加は多少、`ArrayList`の方が速い。(`LinkedList`も十分速い)
取得は段違いに`ArrayList`の方が速い。
削除は段違いに`LinkedList`が速い。

取得は`LinkedList`がやけに時間が掛かってしまうので
取得を伴うリストを作る際は`ArrayList`で良いんじゃないでしょうか。

“`
追加×取得 => `ArrayList`
追加×削除 => `LinkedList`
追加×取得×削除 => `ArrayList`
“`

## 1, 要素の追加

“`CompareList.java
import java.util.List;
import java.util.ArrayList;
import ja

元記事を表示

[ev3×Java] 単一モーターの制御

この記事はJavaでev3を操作してみたい人のための記事です。
今回はモーターをいろいろな方法で制御していきたいと思います。

#目次
0 . 用意するもの
1 . コードの構造
2 . Lモーターの制御
 2-0 . Lモーターを一定時間回転させるプログラム
 2-1 . Lモーターを一定角度回転させるプログラム
 2-2 . Lモーターを加速させていくプログラム
 3-3 . forループを使うプログラム
 2-4 . whileループを使うプログラム
 2-5 . if,elseを使うプログラム
3 . Mモーターの制御
最後に

#0.用意するもの
◯ ev3(インテリジェントブロック)
◯ Lモーター/Mモーター
◯ パソコン(eclipse)
◯ bluetooth
◯ microSD
◯ [API Documentation](http://www.lejos.org/ev3/docs/)(これをみながら進めていくのがオススメです。)

#1.コードの構造

◯今回使うプログラムは大体こんな形です。
まずは、この形についての説明です。

“`templ

元記事を表示

[ev3×Java] leJOS開発環境の構築(Eclipse on Mac OSX /bluetooth)

ev3をJavaで動かすための準備について書いていきます。

#目次
0 . leJOSとは
1 . 必要なもの
2 . 参考記事
3 . microSDの準備
4 . bluetooth接続
5 . SSH接続
6 . Eclipseの準備とプログラムの実行
最後に

#0.leJOSとは

レゴマインドストームのロボットにJavaのプログラミング環境を提供するシステムのことです。

今回は、**Mac OSX**で**bluetooth**を使ってev3を動かします。
また、Javaの統合開発環境である**Eclipse**を使ってプログラムをつくり、処理を実行します。

#1.必要なもの

◯ ev3(タンク)
◯ パソコン(Eclipse)
◯ bluetooth
◯ microSD
◯ [leJOS-API](http://www.lejos.org/ev3/docs/overview-summary.html)

#2.参考記事

こちらの記事を見て進めるのが一番いいと思います。

[【leJOS】mindstorm-EV3をJavaでプログラミングしよう【環境構

元記事を表示

ラムダ式とは(Java)

ラムダ式というのがどうしようもなく理解できなかったので、自分なりに簡略化して理解した結果を記載しています。

#無名関数
まず無名関数についてWikipediaから抜粋。

>プログラミング言語における無名関数(英語: anonymous functionあるいはnameless function)[1]とは、名前付けされずに定義された関数のことである。

>無名関数を表現するための方法には様々なものがあるが、近年[2]主流となっているのはラムダ式による記法である。

(Wikipedia(https://ja.wikipedia.org/wiki/無名関数))

#ラムダ式
つまり、ラムダ式とは無名関数を表現するための方法。(「->」こんなやつ)
→ラムダ式とは名前付けされずに定義された関数のこと。

ちなみにJavaで書く場合はこんな感じ。(Wikipediaの無名関数から抜粋。)

“`sample.java
import java.util.function.*;

BiFunction add = (x, y) –

元記事を表示

【Java】主なデータ型

## 概要
Java内で用意されている主要なデータ型を一覧化し、各型の特徴を整理する。

## 想定読者
– 初級Javaエンジニア

## データ型について
### データ型とは
プログラミング言語などが扱うデータをいくつかの種類に分類し、それぞれについて名称や特性、範囲、扱い方、表記法、メモリ上での記録方式などの規約を定めたもの。

引用元:[データ型とは – IT用語辞典 e-Words](http://e-words.jp/w/%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B.html)
### なぜ存在するのか
データの用途を明確にするため。

## 【Java】データ型一覧表
|データ型|値|備考|
|:————:|:————:|:————:|
|boolean|真(true) or 偽(false)|論理型|
|char|16ビット Unicode文字|※文字列ではない|
|String|文字列||
|byte|8ビット整数|-128~127|
|short|16ビット整数|-32,768~32,76

元記事を表示

【備忘】Spring BootでLogbackを使用する際の設定ファイル

備忘のためSpring BootにおけるLogback使用時の設定ファイルを以下に挙げる

“`




OTHERカテゴリの最新記事