トピック1 : char型の値からint型への変換演算
int型変数aの値は100、char型変数cの値は「medium」であることがわかっています。aとcを加算した後、その値をint型変数xに代入します。バイナリ(base)を使用してください。 2) 出力形式要件に従って符号なし a の文字列表現を整数形式で出力し、c の文字列表現を 16 進数 (基数 16) の符号なし整数形式で出力し、c と x に対応する 10 進整数値を文字列表現で出力します。
出力形式の要件: たとえば、a の値が 500、c の値が「country」の場合、出力内容は次のようになります。
a の文字列表現をバイナリ (基数 2) 符号なし整数として出力します: 111110100
16 進数 (基数 16) の符号なし整数形式での c の文字列表現は次のとおりです: 56fd
文字列表現の に対応する 10 進整数値を出力します: 500
c に対応する 10 進整数値を文字列表現で出力: 22269
x に対応する 10 進整数値を文字列表現で出力: 22769
package test1;
public class work_01 {
public static void main(String[] args) {
int a=500;
char c='国';
String s="国";
int x=a+c;
System.out.print("以二进制(基数 2)无符号整数形式输出a的字符串表示形式为:");
print(a);
System.out.println("以十六进制(基数 16)无符号整数形式c的字符串表示形式为:"+Integer.toHexString(c));
System.out.println("以字符串表示形式输出a对应的十进制整数值为:"+a);
System.out.println("以字符串表示形式输出c对应的十进制整数值为:"+(int)c);
System.out.println("以字符串表示形式输出x对应的十进制整数值为:"+x);
}
public static void print(int num) {
for(int i=31;i>=0;i--) {
System.out.print((num&(1<<i))==0?"0":"1");/*1左移某个位,再和num相与,最终得到的就是num在该位上的数值*/
}
System.out.println();
}
public static String toHexString(String s){
String str="";
for(int i=0;i<s.length();i++){
int ch=(int)s.charAt(i);
String s4=Integer.toHexString(ch);
str=str+4;
}
return "0x:"+str;
}
}
結果の出力は次のようになります。
以二进制(基数 2)无符号整数形式输出a的字符串表示形式为:00000000000000000000000111110100
以十六进制(基数 16)无符号整数形式c的字符串表示形式为:56fd
以字符串表示形式输出a对应的十进制整数值为:500
以字符串表示形式输出c对应的十进制整数值为:22269
以字符串表示形式输出x对应的十进制整数值为:22769
Process finished with exit code 0
トピック 2 : for ループを使用して配列内の要素を出力する
int 型 {320, 871, 33, 5895, 126, 10761, 20001, 83, 6262, 1287} の配列を定義し、for ループを使用して配列内の要素を出力します。
出力:
320 871 33 5895 126 10761 20001 83 6262 1287
public class work_08 {
public static void main(String[] args) {
int[]arr={320, 871, 33, 5895, 126, 10761, 20001, 83, 6262, 1287};
for(int i=0;i<arr.length;i++)
{
System.out.print(arr[i]+" ");
}
}
}
結果の出力は次のようになります。
320 871 33 5895 126 10761 20001 83 6262 1287
Process finished with exit code 0
トピック 3 :
2 次元配列プログラミングを使用して九九を出力する
出力:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
public class work_12 {
public static void main(String[] args) {
for(int i=1;i<10;i++){
for(int j=1;j<=i;j++) {
int p = i * j;
System.out.print(i +"*"+ j + "=" + p+" ");
}
System.out.println();
}
}
}
結果の出力は次のようになります。
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
Process finished with exit code 0