Java中一些知識的歸納總結
阿新 • • 發佈:2019-01-11
1.包裝型別與基本資料型別的區別。
Java語言是一個面向物件的語言,但是Java中的基本資料型別卻是不面向物件的,這使得Java在實際使用時存在很多的不便,為了解決這個不足,在設計類時為每個基本資料型別設計了一個對應的類進行代表,這樣八個和基本資料型別對應的類統稱為包裝類(Wrapper Class),包裝類也就是基礎資料型別的引用型別。 包裝類均位於java.lang包,包裝類和基本資料型別的對應關係如下表所示:
在這八個類名中,除了Integer和Character類以外,其它六個類的類名和基本資料型別一致,只是類名的第一個字母大寫即可。
對於包裝類來說,這些類的用途主要包含兩種:
a、作為和基本資料型別對應的類型別存在,方便涉及到物件的操作。
b、包含每種基本資料型別的相關屬性如最大值、最小值等,以及相關的操作方法。
2.Java中valueOf()、xxxValue()、parseXxx()方法的一些練習。
3.Java中的型別轉換。
(1)String轉換為int
int i = Integer.parseInt(str);
int i = Integer.valueOf(str).intValue();
(2)String轉換為Integer
兩種構造方法的區別,Character只有一種
(3)int轉換為String
String s = s.valueOf(i);
String s = Integer.toString(i);
String s = “”+i;
(4)int轉換為Integer
(5)Integer轉換為String
(6)Integer轉換為int
-
public
class TypeConversion
-
{
-
public static void main(String[] args){
-
-
//String --> int
-
String s =
"111";
-
int i1 = Integer.parseInt(s);
//直接使用靜態方法,不會產生多餘的物件,但會丟擲異常
-
System.out.println(
"String --> int : i1=" + i1);
-
-
int i2 = Integer.valueOf(s).intValue();
//Integer.valueOf(s) 相當於 new Integer(Integer.parseInt(s)),也會拋異常,但會多產生一個物件
-
System.out.println(
"String --> int : i2=" + i2);
-
-
int i3 = Integer.parseInt(s,
10);
//若int i = Integer.parseInt("123",16);即可以看成i = 1*16*16+2*16+3
-
System.out.println(
"String --> int : i3=" + i3 +
'\n');
-
-
-
//int --> String
-
int j =
222;
-
String t1 = String.valueOf(j);
//直接使用String類的靜態方法,只產生一個物件
-
System.out.println(
"int --> String : t1=" + t1);
-
-
String t2 = Integer.toString(j);
//直接使用靜態方法,產生新的物件,會丟擲異常
-
System.out.println(
"int --> String : t2=" + t2);
-
-
String t3 =
"" + j;
//會產生兩個String物件
-
System.out.println(
"int --> String : t3=" + t3 +
'\n');
-
-
-
//int --> Integer
-
int m =
333;
-
Integer n1 = m;
//裝箱
-
System.out.println(
"int --> Integer:n1=" + n1);
-
-
Integer n2 =
new Integer(n1);
-
System.out.println(
"int --> Integer:n2=" + n2);
-
-
Integer n3 = Integer.valueOf(n2);
-
System.out.println(
"int --> Integer:n3=" + n3 +
'\n');
-
-
-
//Integer --> int
-
Integer x=
444;
-
int y1 = x;
//拆箱
-
System.out.println(
"Integer --> int:y1=" + y1);
-
-
int y2 = x.intValue();
-
System.out.println(
"Integer --> int:y2=" + y2);
-
-
int y3 = Integer.valueOf(x);
-
System.out.println(
"Integer --> int:y3=" + y3 +
'\n');
-
-
-
//String --> Integer
-
String r =
"555";
-
Integer k1 = Integer.valueOf(r);
//這種方法常用
-
System.out.println(
"String --> Integer:k1=" + k1);
-
-
Integer k2 =
new Integer(r);
-
System.out.println(
"String --> Integer:k2=" + k2);
-
-
Integer k3 = Integer.parseInt(r);
-
System.out.println(
"String --> Integer:k3=" + k3);
-
-
Integer k4 = Integer.parseInt(r,
10);
-
System.out.println(
"String --> Integer:k4=" + k4 +
'\n');
-
-
-
//Integer --> String
-
Integer l =
666;
-
String z1 = String.valueOf(l);
-
System.out.println(
"Integer --> Stringf:z1=" + z1);
-
-
String z2 = l.toString();
-
System.out.println(
"Integer --> Stringf:z2=" + z2);
-
-
String z3 =
"" + l;
-
System.out.println(
"Integer --> Stringf:z3=" + z3 +
'\n');
-
}
-
-
}
-
4.用Java程式設計實現以下功能:通過鍵盤輸入兩個數,初始化並將這兩個數值交換後,輸出顯示後的資料。
-
import java.util.Scanner;
-
public
class StudyDiary02
-
{
-
public static void main(String[] args){
-
Scanner input =
new Scanner(System.in);
-
System.out.print(
"請輸入第一個值:");
-
int a = input.nextInt();
-
System.out.print(
"請輸入第二個值:");
-
int b = input.nextInt();
-
System.out.println(
"交換之前的兩個值為"+a+
","+b);
-
int c;
-
c = a;
-
a = b;
-
b = c;
-
System.out.println(
"交換之後的兩個值為"+a+
","+b);
-
}
-
}
5.用Java程式設計實現以下功能:定義一個五位整數,求各個位上的數的和。
-
import java.util.Scanner;
-
-
public
class StudyDiary03
-
{
-
public static void main(String[] args) {
-
Scanner in =
new Scanner(System.in);
-
System.out.print(
"請輸入一個五位整數:");
-
int i = in.nextInt();
-
int sum =
0;
-
if (i <
10000 || i >
99999) {
-
System.out.println(
"輸入有誤!");
-
}
else {
-
for (
int j =
0; j <
5 ; j++ ) {
-
sum += i %
10;
-
i = i /
10;
-
}
-
System.out.println(
"該五位整數各位數上之和為sum=" + sum );
-
}
-
}
-
}
6.用Java程式設計實現以下功能:根據天數計算其包含的週數和剩餘的天數。(天數通過鍵盤輸入)
-
import java.util.Scanner;
-
public
class StudyDiary04
-
{
-
public static void main(String[] args){
-
Scanner in =
new Scanner(System.in);
-
System.out.print(
"請輸入要轉換的天數:");
-
int day = in.nextInt();
-
int week = day /
7;
-
day = day %
7;
-
System.out.println(
"為" + week +
"周," + day +
"天。");
-
}
-
}
7.學會使用API文件,看一看String類的所有方法。
8.明確什麼是引用型別,和C++的指標有什麼異同,掌握java中陣列的基本知識,例如(動態/靜態)初始化,賦值,求大小,關於大小改變與C/C++中的區別。