JAVA関連のことを調べてみた2022年09月16日

JAVA関連のことを調べてみた2022年09月16日

Javaのequalsメソッドについて

今日の実務で、実装レビューにて指摘があった箇所を備忘録として残す。

Javaの経験が浅い方や、古いバージョン(8以前)を中心に実装していた方が8以降のバージョンを扱い始めた方にもためになるかと思います。

## Stringクラスのequalsメソッド

Java歴が浅い方や最近学習を始めたという方は、文字列比較のために、Stringクラスのequalsメソッドを基本として学ぶと思います。
(僕も研修や独学時代はこれしか学びませんでしたし、今も癖で使ってしまいます。)

Stringクラスのequalsメソッドは、比較する文字列が同値であるかどうかを判定してくれます。
なので、参照先が異なっていたとしてもtrueを返却してくれます。
“`java
String a = “あいう”;
String b = “あいう”;
String c = new String(“あいう”);

System.out.print(a.equals(b));//true
System.out.print(a.equals(c));//true
“`

(余談:実はObjec

元記事を表示

MediatorLiveDataでNullPointerExceptionが出たときの対処法

### はじめに
以下のエラーが出た。

> at androidx.databinding.ViewDataBinding.updateRegistration(ViewDataBinding.java:653)

“`java:ActivityMainBindingImpl.java
if (vModel != null) {
// read vModel.isNetworkError
vModelIsNetworkError = vModel.isNetworkError();
}
pdateLiveDataRegistration(0, vModelIsNetworkError); //この行で上記のエラー
“`

>Caused by: java.lang.NullPointerException: Attempt to invoke virtual method ‘void androidx.lifecycle.LiveData.observeForever(androidx.lifecycle.Observer)’ on a null object

元記事を表示

Python,Ruby,PHP,Java,JavaScript,Perlの四則演算の比較

Qiita > プログラミング言語の比較

Python,Ruby,PHP,Java,JavaScript,Perlの四則演算の比較

# Python

https://qiita.com/hiroyuki_mrp/items/d7e4c2d75e947ab99caf

# Ruby

https://qiita.com/mat827/items/ee569f6549b83bb954e2

# PHP

https://qiita.com/koala_56/items/7ed631f62cf0f225f5a6

# Java

https://qiita.com/takahirocook/items/748990882f2de7a630a1

# JavaScript

https://qiita.com/_haya_/items/dbe80010a0a8ac9d70b1

# Perl

https://perlzemi.com/blog/

元記事を表示

インクリメント演算子の前置と後置について

# インクリメント演算子の前置と後置の違い

javaシルバーの資格勉強をしていた際、インクリメント演算子が前と後ろに置かれているものがあり、「どっちだったかな〜」とど忘れしたので、その備忘録として。

# 前置のインクリメント
“`
++i
“`
このようなもの。

# 後置のインクリメント
“`
i++
“`
このようなもの

# どう違うのか

簡単にいってしまうと、評価されるタイミングが違う。

前置インクリメントの例
“`
int num=0;

System.out.println(++num);      

//1が表示される
“`
先にnum=0にプラス1してから(評価してから)表示させている。

続いて後置インクリメントの例
“`
int num=0;

System.out.println(num++); //0が表示

System.out.println(num); //1が表示
“`
1回目のSysoutでは後置インクリメントなので、一旦変数numの値を表示してから、プラス1をしている。
2回目のSysoutでは、1回目でプラス1した値(

元記事を表示

半日404エラー解消に悩みまくった(Tomcat・サーブレット)

# 試したことメモ。
①サーバー上に追加し直し。(eclipse上)
これのことね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/287651/f06e1853-2e40-47b9-4895-07d9e3d2f9ce.png)

②(html or jspの)form action=”●●●”と(サーブレット側の)@WebServlet(“/●●●”)の一致を行った。

③buildフォルダにclassファイルができていない。
→プロジェクトのビルドが必要。

取り急ぎ~

元記事を表示

めちゃくちゃ簡易のビンゴゲームを作る #3

# はじめに
[前回までの記事](https://qiita.com/snow_saboten/items/cb3fd3af99575f12eeee)で見た目的にはビンゴゲームになってきたので、次の段階として、ビンゴゲームのリーチやビンゴの判定機能を作りたい。検索すれば答えがヒットするんだろうけど、自分で考え抜きたい意地が発現してしまったので、記事を書きながら頭を整理しつつ、作っていきたいと思う。

# ふわっと作戦を考える
今ふわっと考えていることとしては、現状はカードに縦5マス並べたものを5列横に並べているのだが、これを二次元配列を使っての配置に変更すること。これで、縦横の判定はしやすくなるだろうと予想している。斜めに関しては、2パターンしかないし、個別に書き連ねるのが良いのかな?

# まず二次元配列での配置で現状までの機能をつくる
## コード
“`Java
public class BingoGame extends JFrame implements ActionListener{
JButton mkCardBtn;
JPanel BingoCardPanel;

元記事を表示

doma-templateでJdbcTemplateを2-way SQL化したサンプルをApache License 2.0で公開しました

# doma-templateの紹介
## doma-templateとは?
常々、SpringのJdbcTemplateでDomaの2-way SQLを使えたらいいのになあ・・・と思っていました。

で、?のようなことをつぶやいたら、Doma作者のnakamura_toさんからこんなリプライをいただきました!