Java实例入门(一)
public class HelloWorld
{public static void main(String args[])
{System.out.println("Hello World!");
}
}
保存为:HelloWorld.java
注意:文件名必须与包含main方法的类的名字相同,扩展名必须为java。
运行结果:
在屏幕上打印出:Hello,World!
public class Add
{public static void main(String args[])
{int a=3,b=6;
int c=a+b;
System.out.println("c="+c);
}
}
保存为:Add.java
运行结果:
在屏幕上输出:c=9
java实例入门(二)-----基本运算符与表达式
public class Arithmetic
{public static void main(String args[])
{int i=8,j=4,I=0; //定义变量
int a=5,b=6; //变量初始化
float f=1.0f; //单精度类型
double d=2.5d; //双精度类型
int m=i%j;
f=i/j;
I=++i+j++; //I=?
System.out.println("I="+I);
System.out.println("f="+f);
int c=a>b?a:b;
d+=a;
System.out.println("d+a="+d); //自动类型转换
int n=(int)(d+b);
System.out.println("n="+n); //强制类型类型转换,会丢失精度
boolean bool=a>b;
System.out.println("bool="+bool);
boolean firstbool=true;
boolean secondbool=bool&&firstbool;
secondbool=bool||firstbool;
char ch='H';
System.out.println("ch="+ch);
String s="Hello,Everyone!";
System.out.println(s);
}
}
运算结果:
C:\java>java Arithmetic
I=13
f=2.0
d+a=7.5
n=13
bool=false
ch=H
Hello,Everyone!
C:\java
java实例入门(三)--获取命令行参数
public class GetArgs
{public static void main(String myargs[])
{String s="";
if (myargs.length!=0)
s=myargs[0];
System.out.println("s="+s);
}
}
要点:参数放在字符串数组myargs里;
注意:编译后,必须用命令行运行此程序,方法:
java GetArgs Hello
运行结果为:
s=Hello
java实例入门(四)-----循环语句
/**
* 编写程序,计算从1到100的累加和,用for语句实现。
*/
public class Sum {
public static void main(String[] args) {
int s = 0; // 用来保存累加和,初始化为 0
for(int i = 0; i <= 100; i++)
s += i; // for 循环体只有一个语句,可不用大括号
System.out.println("从1到100的累加和为:" + s);
}
}
/* 计算从正整数n1到n2的累加和,用while语句实现。
*/
// 解法一,固定 n1, n2 的值
public class Sum {
public static void main(String[] args) {
int s = 0; // s 用来保存累加和,初始化为 0
int n1 = 8, n2 = 66; // 预定 n1, n2 的值
int i = n1; // i 用来做循环计数,初始化为 n1
while(i <= n2){
s += i;
i++;
}
System.out.println("n1为:" + n1 + "; n2为:" + n2);
System.out.println("从n1到n2的累加和为:" + s);
}
} // 解法一结束
/*解法二,键盘输入n1, n2的值
import java.io.*;
public class Sum {
public static void main(String[] args) {
int s = 0; // s 用来保存累加和,初始化为 0
String str = ""; // String对象str用来保存键盘输入的字符串
int n1 = 0, n2 = 0;
try{
java.io.InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
System.out.print("输入正整数n1:"); // 由键盘取得n1
str = br.readLine();
n1 = Integer.parseInt(str);
System.out.print("\n再输入正整数n2:"); // 由键盘取得n2
str = br.readLine();
n2 = Integer.parseInt(str);
}catch(IOException e){ }
int i = n1; // i 用来做循环计数,初始化为 n1
while(i <= n2){
s += i;
i++;
}
System.out.println("从n1到n2的累加和为:" + s);
}
} // 解法二结束
/**
* 编写程序,计算从1到100的累加和,用do-while语句实现。
*/
public class Sum {
public static void main(String[] args) {
int s = 0; // s用来保存累加和,初始化为 0
int i = 1; // i用来做循环计数,初始化为 1
do{
s += i;
i++;
}while(i <= 100);
System.out.println("从1到100的累加和为:" + s);
}
}
java实例入门(五)----break语句的使用
/*不带标号的break语句的使用 */
public class BreakOne
{public static void main(String args[])
{int index=0;
while (index<=100)
{index+=10;
if(index==40)
break;
System.out.println("index="+index);
}
}
}
运行结果:
index=10
index=20
index=30
/* 带标号的break语句 */
class BreakTwo
{public static void main(String args[])
{int sum=0;
coloop:
while (sum<=100)
{for(int count=0;count<10;count++)
{sum+=count;
if(sum>50)
break coloop; //跳出coloop标识的循环
}
}
System.out.println("sum="+sum);
}
}
运行结果:
sum=51
java实例入门(六)----continue语句的使用
/*不带标号的continue语句*/
public class ContinueOne
{public static void main(String args[])
{int index=0;
while(index<=99)
{index+=10;
if(index==40)
continue;
System.out.println("index="+index);
}
}
}
运行结果:
index=10
index=20
index=30
index=50
index=60
index=70
index=80
index=90
index=100
注意:
为什么40没有打印出来?
/*带标号的continue语句*/
public class ContinueTwo
{public static void main(String args[])
{System.out.println("**100到200之间的所有素数**");
int n=0;
outer:for(int i=101;i<200;i+=2)
{ int k=15;
for(int j=2;j<=k;j++)
{if(i%j==0)
continue outer;
}
System.out.print(" "+i);
n++;
if(n<10)
continue;
System.out.println();
n=0;
}
System.out.println();
}
}
/*用switch语句实现学生成绩的百分制到等级制的转换*/
class SwitchDemo
{public static void main(String[] args)
{int testscore=88;
char grade='A';
switch(testscore/10)
{case 10:
case 9:
grade='A';
break;
case 8:
grade='B';
break; case 7:
grade='C';
break;
case 6:
grade='D';
break;
default:
grade='F';
break;
}
System.out.println("grade is:"+grade);
}
}
运行结果:
grade is:B
java实例入门(八)---一维数组的使用
/*冒泡法排序*/
public class BubbleSort
{public static void main(String args[])
{int i,j;
int intArray[]={20,1,-3,30,50};
int len=intArray.length;
for(i=1;i< len;i++)
for(j=0;j<=len-i-1;j++)
if(intArray[j]>intArray[j+1])
{int t=intArray[j];
intArray[j]=intArray[j+1];
intArray[j+1]=t;
}
for(i=0;i< len;i++)
System.out.println(intArray[i]+" ");
}
}
运行结果:
C:\java>java BubbleSort
-3
1
20
30
50
C:\java>
java实例入门(九)---多维数组的使用
/*打印杨辉三角形*/
public class YangHui
{public static void main(String args[])
{
final int ROW=8;
int a[][]=new int[ROW+1][];
for(int i=0;i<=ROW;i++)
{
a[i]=new int[i+1]; //分配每一行的列数,java语言支持不等维的数组
}
yanghui(a,ROW);
}
static void yanghui(int a[][],int ROW)
{
for(int i=0;i<=ROW;i++)
for(int j=0;j<=a[i].length-1;j++)
{
if(i==0||j==0||j==a[i].length-1)
a[i][j]=1;
else a[i][j]=a[i-1][j-1]+a[i-1][j];
}
for(int i=0;i<=ROW;i++)
{
for(int j=0;j<=a[i].length-1;j++)
System.out.print(a[i][j]+"\t");
System.out.println();
}
}
}
运行结果:
C:\java>java YangHui
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
C:\java>
java实例入门(十)---字符串的基本使用方法
public class StringDemo
{
public static void main(String args[])
{String s=" Hello ";
System.out.println("s="+s);
System.out.println("s.toLowerCase()="+s.toLowerCase()); //转换为小写字符串
System.out.println("s.t0UpperCase()="+s.toUpperCase()); //转换为大写字符串
System.out.println("s.trim()="+s.trim());
System.out.println("s.substring(5)="+s.substring(5));
System.out.println("s.substring(3,5)="+s.substring(3,5));
String news=s.replace('l','t');
System.out.println("replace all 'l' with 't':"+news);
}
}
运行结果:
C:\java>java StringDemo
s= Hello
s.toLowerCase()= hello
s.t0UpperCase()= HELLO
s.trim()=Hello
s.substring(5)=lo
s.substring(3,5)=el
replace all 'l' with 't': Hetto
C:\java>