###前提・実現したいこと
16進数または10進数の2つの整数の和を16進数と10進数で求めるコードを書いています。
入力された数が16進数だった場合は、10進数に直してから足し算をし、
入力された数が10進数だった場合はそのまま足し算をする
という分岐の時に、入力された数が16進数かどうかを判断する仕方がわからず困っています。
###該当のソースコード
java
1import java.util.Scanner; 2 3public class trial12_14 { 4 5 public static void main(String[] args) { 6 Scanner stdIn = new Scanner(System.in); 7 System.out.println("2つの整数の和か差を求めます。"); 8 //入力はa,b共に16進数かa,b共に10進数のどちらかと仮定する 9 System.out.println("aの値:"); int a = stdIn.nextInt(); 10 System.out.println("bの値:"); int b = stdIn.nextInt(); 11 System.out.println(a + b); 12 13 // 入力された値aとbが16進数かどうかを判断 14 if(a && b){ 15 //16進数を10進数に変更 16 int a_dec = Integer.parseInt(a, 16); 17 int b_dec = Integer.parseInt(b, 16); 18 int result_dec = a_dec + b_dec; 19 }else{ 20 int result_dec = a + b; 21 } 22 23 String result_hex = Integer.toHexString(result_dec); 24 System.out.print(result_hex); 25 System.out.print("(" + result_dec + ")"); 26 } 27 28}
###補足情報(言語/FW/ツール等のバージョンなど)
Eclipse Java EE IDE for Web Developers.
Version: Neon.3 Release (4.6.3)
Build id: 20170314-1500
回答2件
あなたの回答
tips
プレビュー