[解決済み] プリミティブ型のintに対してequals(String)を実行できないエラー?[クローズド]です。
質問内容
で困っています。
if statement block
の下にあります。
public void viewaccount ( ) {
Scanner getinput = new Scanner(System.in);
System.out.println("Enter your account number to log in");
int login = getinput.nextInt();
if (login.equals("accnumber")) { // <== here
/* to be written */
}
}
解決方法は?
.equals(String)
は、2つの文字列が同じ文字/テキストを含むかどうかをチェックするメソッドです。明らかに、あなたは
.equals()
なぜなら、int型には文字が含まれていないからです(もちろん、人間が読める形に変換されるまではそうです)。
ユーザーが正しく入力したかどうかを確認したい場合 口座番号 というようなことをする必要があります。
public void viewaccount() {
Scanner getinput = new Scanner(System.in);
System.out.println("Enter your account number to log in");
int login = getinput.nextInt();
// Correct account number:
int correctAccountNumber = 1234567;
if (login == correctAccountNumber) {
// Hooray! Success.
}else{
System.out.println("You have entered the incorrect account number.");
}
}
もしこれが実際のアプリケーションで使われるとしたら、セキュリティの観点からは悪夢としか言いようがありません。
より深く見ていただくために
.equals()
を読むことをお勧めします。
Java の
Objects
クラス
.
int
は
プリミティブデータ型
のようなメソッドは組み込まれていません。
String
が持っています。
String
は
複合データ型
を使用することができます。
String
のようなメソッドと属性を持つことができます。
.length()
,
.equals()
,
.trim()
などなど。
Javaでは、すべてのクラスが
Object
をスーパークラスとすることで、すべてのクラスと複合データ型に
.equals()
,
.hashcode()
および
.toString()
しかし、その上に、すべての複合データ型は、独自のメソッドを実装することもできる。例えば
Integer
データ型(これはプリミティブな
int
のような関数が追加されます。
.parseInt()
と
.compare()
.
多くの言語と異なり、Javaはプリミティブなデータ型と、それらすべてのデータ型に対する組み込みのラッパークラスを提供します。
int
があります。
Integer
.
boolean
があります。
Boolean
.
long
があります。
Long
.
char
があります。
Character
. そして、他のすべてのプリミティブ型について、このリストが続きます。
関連
-
[解決済み】Android Studioでタスク :app:compileDebugJavaWithJavac の実行に失敗しました。
-
[解決済み】"|="の意味は何ですか?(パイプ等号演算子)
-
[解決済み】Java JDK - doubleからintへの非可逆変換の可能性
-
[解決済み】接続Java - MySQL : 公開鍵の取得は許可されていません。
-
[解決済み] JavaでStringをintに変換するにはどうしたらいいですか?
-
[解決済み] ファイルの内容からJavaの文字列を作成するにはどうすればよいですか?
-
[解決済み] 整数の平方根が整数であるかどうかを判断する最速の方法
-
[解決済み] intからStringへの変換方法を教えてください。
-
[解決済み] Java のメソッド名を文字列で指定した場合、どのように呼び出すのですか?
-
[解決済み] Javaにおける==とequals()の違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Hibernateエラー:同じ識別子値を持つ別のオブジェクトがすでにセッションに関連付けられました。
-
[解決済み】javaで指定されたファイルが見つからない
-
[解決済み] メソッドがスーパータイプのメソッドをオーバーライドまたは実装していない - Overrideの場合
-
[解決済み】Eclipseがエラーメッセージ "Java was started but returned exit code = 1" を返す
-
[解決済み】-XX:MaxPermSizeは何をするのですか?
-
[解決済み】なぜjava.io.Fileにはcloseメソッドがないのでしょうか?
-
[解決済み】ソースルート外のJavaファイル intelliJ
-
[解決済み] [Solved] java.lang.NoClassDefFoundError: クラスXXXを初期化できませんでした。
-
[解決済み】Ubuntu: OpenJDK 8 - パッケージを見つけることができません。
-
[解決済み】koch snowflake java recursion