心情: :ok:
筆名: 花美
行業(yè): telecommunication
TIME: 2020-4-12
java數(shù)據(jù)類(lèi)型
數(shù)據(jù)類(lèi)型 | 說(shuō)明 | 字節(jié) |
---|---|---|
Byte | 字節(jié)型 | 1 |
Short | 短整型 | 2 |
Int | 整型 | 4 |
Long | 長(zhǎng)整型 | 8 |
Float | 單精度浮點(diǎn) | 4 |
Double | 雙精度浮點(diǎn) | 8 |
Char | 字符型 | 2 |
Boolean | 布爾型 | 1 |
class a{
public static void main(String[] args)
{
int x,y;
x=3;y=4;
char ch='h';
double d = 1.23E5;//E可以大小寫(xiě) 1.23*10的5次方
float f = 1.23e5f;//與double不同多加個(gè)f 不加f默認(rèn)double
double dl = .2;
System.out.println(x+","+y+","+ch+","+d+","+f+","+dl);
//結(jié)果:3,4,h,123000.0,123000.0,0.2
}
}
Unicode編碼
Unicode表示法拆内,在值的前面加上
\u
例子:char c = '\u005d'
運(yùn)算符
名稱(chēng) | 運(yùn)算符 | 含義 |
---|---|---|
三目運(yùn)算符 | a>b?a:b | a大于b取a趾诗,否則取b |
與 | operator1 && operator1 | 乘 先鱼; 同時(shí)滿足 |
或 | operator1 || operator1 | 相加 ; 滿足一個(gè)即可 |
非 | 茅姜!operator1 | 取反 |
模 | % | 相除取余數(shù) |
&&
與||
為短路運(yùn)算符
- & 前后兩個(gè)操作數(shù)都會(huì)進(jìn)行計(jì)算
- && 前面條件正確時(shí),才執(zhí)行后面,==不正確時(shí)槐秧,就不執(zhí)行(直接false)==,就效率而言忧设,這個(gè)更好
- | 前后兩個(gè)操作數(shù)都會(huì)進(jìn)行計(jì)算
- || 前面條件正確刁标,后面不執(zhí)行(直接true)==,不正確時(shí)址晕,后面執(zhí)行 膀懈,就效率而言,這個(gè)更好
運(yùn)算符-優(yōu)先級(jí)
優(yōu)先級(jí)從上至下 : 由高到低
運(yùn)算符 |
---|
( ) |
!谨垃,++启搂,— — |
*硼控,/,% |
+胳赌,— |
<牢撼,<=,>疑苫,>= |
= = 熏版,! = |
&& |
|| |
=,+ =捍掺,* =纳决,/ =,% =乡小,— = |
綜合例子:
import java.util.*;
public class a{
public static void main(String[] args){
System.out.println("親愛(ài)的\n你想判斷的年份是:");
Scanner sc = new Scanner(System.in);
while(true){
int year = sc.nextInt();
if(((year%4==0)&&(year%100!=0))||(year%400==0)){
System.out.println("親愛(ài)的\n"+year+"是閏年O阔加!");
}else{
System.out.println("親愛(ài)的\n"+year+"并不是閏年!");
}
//運(yùn)行結(jié)果:
//親愛(ài)的
//你想判斷的年份是:
//2002
//親愛(ài)的
//2002并不是閏年!
//2004
//親愛(ài)的
//2004是閏年o!
}
}
}
數(shù)組
public class a{
public static void main(String[] args){
int[] intArray;
String strArray[]; //第二種寫(xiě)法
intArray = new int[10];
strArray = new String[10];
float floatArray []= new float[10];
char[] ch = {'a','b','c'};
System.out.println("ch數(shù)組長(zhǎng)度"+ch.length
+"\t"+"intArray數(shù)組第二個(gè)元素為"+intArray[1] +"\t"
+"strArray數(shù)組第二個(gè)元素為"+strArray[1]+"\t"
+"float數(shù)組最后一個(gè)元素"+floatArray[floatArray.length-1]
);
for(int i = 0;i<10;i++)
{
intArray[i] = i+1;
System.out.print(intArray[i]+"\t");
}
//運(yùn)行結(jié)果:
// ch數(shù)組長(zhǎng)度3 intArray數(shù)組第二個(gè)元素為0
//strArray數(shù)組第二個(gè)元素為null float數(shù)組最后一個(gè)元素0.0
//1 2 3 4 5 6 7 8 9 10
}
}
方法—函數(shù)
方法重載:
例如plus方法名字起的一樣满钟,形參寫(xiě)的不一樣胜榔,就是對(duì)方法的重載,不考慮方法的返回值類(lèi)型
int
,void
等
數(shù)組常識(shí)易錯(cuò)點(diǎn):
全局變量數(shù)組給形參數(shù)組傳值(數(shù)組的形參與實(shí)參名可-同湃番,可-不同)——函數(shù)內(nèi)部被改變數(shù)據(jù) 夭织,
此時(shí)全局變量的數(shù)組也變值,因?yàn)?:
數(shù)組和對(duì)象是引用數(shù)據(jù)類(lèi)型 :原理是數(shù)組與java中以new創(chuàng)建的-對(duì)象會(huì)在堆(Heap)中分配內(nèi)存空間
用完不會(huì)馬上消 失吠撮,而是有垃圾回收機(jī)制控制尊惰。Stak中的var指向Heap中的var——就是java中的指針!!
class Mathdemo{
public int plus(int m,int n){
return m+n;
}
public float plus(double m,double n){
return (float)(m+n);//復(fù)習(xí)一下強(qiáng)制轉(zhuǎn)換吧
}
public int plus(int[] arr){
int sum=0;
for(int i = 0 ;i<arr.length;i++)
{
sum+=arr[i];
}
return sum;
}
public int pluss(int[] aarr){
aarr[0] = 12;
return 0;
}
public static void main(String[] args){
int m=5,n=10;
int[] arr ={1,2,3,4,5};
Mathdemo md=new Mathdemo();
System.out.println("int和:"+md.plus(m,n));
System.out.println("double和:"+md.plus(5.1919219191931919,6.7));
System.out.println("arr和:"+md.plus(arr));
md.pluss(arr);
System.out.println("arr[0]:"+arr[0]);//數(shù)組給形參傳值被改變數(shù)據(jù) 全局變量的數(shù)組也變值
//結(jié)果:
//int和:15
// double和:11.891922
// arr和:15
//arr[0]: 12
}
}
可變參數(shù)列表:
型如
int... a
這樣的 形參叫做可變參數(shù)列表泥兰,在函數(shù)重載時(shí)候弄屡,可變參數(shù)列表的方法是最后被訪問(wèn)的
public void search(int a,int... a){}
對(duì)象.search(3,1,2,3)//123為參數(shù)列表的實(shí)參 也就相當(dāng)一個(gè)數(shù)組變量