JAVA复习Word格式文档下载.docx
《JAVA复习Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《JAVA复习Word格式文档下载.docx(21页珍藏版)》请在冰豆网上搜索。
导入一个包:
在定义包的下面写如下语句:
importpkg1.pkg2.*;
(导入包pkg1.pkg2下的所有类)
importpkg1.pkg2.MyClass1;
(导入包pkg1.pkg2下的指定类MyClass1)
-----------
所以文件头部一般格式为:
packagecom.ss;
importjava.util.*;
5java控制台的输入和输出(Scanner和System.out.printf语句)
先导入包Importjava.util.*
在函数中定义Scannerscanner=newScanner(System.in);
Stringa1=scanner.next();
//读取下一个单词(以空格为分界符)
Stringa2=scanner.nextLine();
//读取输入下一行内容
Intb=scanner.nextInt();
Doublec=scanner.nextDouble();
6条件(if、switch语句)
If(条件){
}elseif(条件){
}else
switch(变量){
case0:
~~~~~;
break;
case1:
~~~~~~;
default:
}
7循环语句(for、while语句)
For(初始化操作;
循环继续条件;
每次迭代后的操作){语句(组);
};
While(循环继续条件){语句(组);
8变量的定义(普通变量定义、初始化、静态变量、常量的定义)
关键字static
1.静态方法和静态变量是属于某一个类,而不属于类的对象
2.静态方法和静态变量的引用直接通过类名调用
3.在静态方法中不能调用非静态的方法和引用非静态的成员变量
反之,则可以
4.可以用类的对象obj来调用静态的方法method(),
如obj.method();
常量的定义
1.使用关键字final定义常量,如:
finaldoublePI=3.1415926;
2.作为一种约定,在定义常量时,通常采用大写形式
3.final常量一般在声明的同时赋初值,也可以在构造函数中赋初值
4.为了节省内存空间,我们常将变量声明为静态的(static)
总结,static的变量值可以变,final的值只能为第一次赋予的值
9数组的定义,数组的遍历
double[]mylist=newdouble[10];
初始化
Scannerscanner=newScanner(System.in);
for(inti=0;
i<
mylist.length;
++i){
Mylist[i]=scanner.nextdouble();
10字符串的使用,比如定义字符串、格式化字符串、字符串的查找(比如查找“=”)
定义字符串,格式化字符串
Stringmessage=newString(“welcometojava”);
Stringmessage=“welcometojava”;
Char[]charArray={‘G’,’O’,’O’,’D’,’D’,’A’,’Y’};
Stringmessage=newString(charArray);
字符串的查找
Java中字符串中子串的查找共有四种方法,如下:
1、intindexOf(Stringstr):
返回第一次出现的指定子字符串在此字符串中的索引。
2、intindexOf(Stringstr,intstartIndex):
从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。
3、intlastIndexOf(Stringstr):
返回在此字符串中最右边出现的指定子字符串的索引。
4、intlastIndexOf(Stringstr,intstartIndex):
从指定的索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符串的索引。
11ArrayList、HashSet、HashMap的定义和遍历
//List
List<
DinXinGY>
list=newArrayList<
();
DinXinGYgy=newDinXinGY("
z"
"
03"
xingzhen"
3000);
DinXinGYgy1=newDinXinGY("
a"
02"
7000);
DinXinGYgy2=newDinXinGY("
g"
01"
2000);
DinXinGYgy3=newDinXinGY("
d"
04"
6000);
list.add(gy);
list.add(gy1);
list.add(gy2);
list.add(gy3);
//按工资排序
System.out.print("
排序前\n"
);
Iterator<
it=list.iterator();
while(it.hasNext()){
((DinXinGY)it.next()).Print();
}
Collections.sort(list);
按工资排序后\n"
it=list.iterator();
按工号排序后\n"
}//遍历
//Set
Set<
set=newHashSet<
add方法是像HashSet中添加一个数据,remove是移除某个数据,contains判断是否包含某个数据,
HashSetset=newHashSet();
set.add("
b"
set.remove("
System.out.println(set.contains("
));
//遍历
Iteratorit=set.iterator();
while(it.hasNext())//hashNext判断是否还有下一个元素
{System.out.println(it.next());
//调用next后,索引往下移动一个数据
//Map
Map<
String,Value>
map=newHashMap<
String,Value>
通过put向HashMap的对象中添加数据,通过remove方法,移除
HashMapmap=newHashMap();
map.put(13,"
map.put(23,"
map.put(33,"
c"
map.remove(23);
Iteratoriter=map.entrySet().iterator();
while(iter.hasNext()){
Map.Entryentry=(Map.Entry)iter.next();
Objectkey=entry.getKey();
Objectval=entry.getValue();
}
12JDBC连接字符串的含义、Tomcat资源定义的含义
//获得数据库连接
publicstaticConnectiongetConnection(){
Connectioncon=null;
try{
Class.forName("
com.mysql.jdbc.Driver"
);
//加载MySql数据驱动
con=DriverManager.getConnection(
"
jdbc:
mysql:
//localhost:
3306/guyuan"
"
root"
123456"
//创建数据库连接
System.out.printf("
数据库连接成功\n"
catch(Exceptione){
System.out.printf("
数据库连接失败\n"
}
returncon;
<
!
--本机的MYSQL数据源-->
description>
MySQLTestApp<
/description>
resource-ref>
DBConnection<
res-ref-name>
jdbc/TestDB<
/res-ref-name>
res-type>
javax.sql.DataSource<
/res-type>
res-auth>
Container<
/res-auth>
/resource-ref>
13面板的布局方式、按钮的定义、添加
(JPanel)Panel是一个轻量级的容器,由于不是顶层的容器,故其必须放在JFrame(Frame)等高级容器上
packagecom.zzs.demo;
importjava.awt.BorderLayout;
importjava.awt.Button;
importjava.awt.FlowLayout;
importjava.awt.GridLayout;
importjavax.swing.JFrame;
publicclassDemo1extendsJFrame{
publicDemo1(){
setLayout(newFlowLayout());
//参数1,2,3,1:
默认为CENTER,2:
行间距默认为5,3:
列间距默认为5
//FlowLayout.Right,FlowLayout.Left,以及CENTER
setLayout(newGridLayout(3,4,0,0));
//行默认1,列默认1,行间距默认5,列间距默认5
setLayout(newBorderLayout());
//参数1,2,1:
行间距默认0,列间距默认0
//对下面的Button要进行控制,BorderLayout.EAST\SOUTH\WEST\NORTH\CENTER
for(inti=0;
12;
add(newButton("
OK"
+i));
}
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//TODO自动生成的方法存根
Demo1panel=newDemo1();
panel.setSize(200,200);
panel.setLocationRelativeTo(null);
panel.setTitle("
DEMO1"
panel.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel.setVisible(true);
}}}
14类的定义、继承(关键字)
publicclassA{
publicA(inta){
setA(a);
privateinta;
publicintgetA(){
returna;
publicvoidsetA(inta){
this.a=a;
publicclassBextendsA{
publicB(inta,intb){
super(a);
setB(b);
privateintb;
publicintgetB(){
returnb;
publicvoidsetB(intb){
this.b=b;
15根据要求,写出函数声明
代码:
1条件语句,根据条件,做判断(比如判断是否及格、是否符合参选条件)
publicclassXuanju{
//TODOAuto-generatedmethodstub
Scannerscanner=newScanner(System.in);
//是否美国人
booleangongMin=true;
是否为美国人。
1:
是;
0:
不是。
请输入:
"
intvalue=scanner.nextInt();
if(value==1){
gongMin=true;
}else{
gongMin=false;
System.out.println("
gongMin="
+gongMin);
//年龄
请输入年龄:
intage=scanner.nextInt();
System.out.println("
年龄:
+age);
//提名数(以万为单位)
doubletiMin=0.0;
请输入提名数量(单位:
万):
tiMin=scanner.nextDouble();
提名数:
+tiMin);
//保证金
booleanbaoZhengJin=true;
是否交纳足额的保证金。
value=scanner.nextInt();
baoZhengJin=true;
baoZhengJin=false;
保证金:
"
+baoZhengJin);
//年龄下限
finalintminAge=35;
//提名下限
finalintminTiMin=70;
//判断是否符合条件
booleanresult=true;
if(gongMin==true&
&
age>
=minAge&
tiMin>
=minTiMin&
baoZhengJin==true){result=true;
}else{
result=false;
//输出结果
if(result){
System.out.printf("
符合条件,可以参与竞选\n"
不符合条件\n"
2循环语句,比如循环输出,-1退出;
打印三角形等;
计算贷款利率等
System.out.print("
计算工资;
2:
修改提成比例;
-1:
退出;
请选择:
intchose=scanner.nextInt();
while(chose!
=-1){
if(chose==1){
}elseif(chose==2){
\n1:
chose=scanner.nextInt();
System.exit(0);
while(true){
System.out.print("
1:
定薪雇员;
2:
钟点雇员;
3:
佣金雇员;
4:
带薪佣金雇员;
-1:
退出.请输入:
intchose=scanner.nextInt();
if(chose==1){
gy.Print();
}elseif(chose==2){
}elseif(chose==3){
}elseif(chose==4){
}elseif(chose==-1){
System.exit(0);
}else{
System.out.print("
inputerror!
break;
}
for(inti=0;
i<
5;
System.out.println("
for(intj=i;
j<
5;
++j){
*"
3字符串的使用:
统计字符串字符类型、计算重复个数等
//密码强度
publicclassMima{
//输入密码
请输入密码:
Stringpasswd=scanner.next();
System.out.printf("
密码:
%s\n"
passwd);
//判断强度
//计算长度
intlen=passwd.length();
intscorelen=0;
//长度成绩
if(len>
18){
len=18;
for(inti=0;
i<
len;
scorelen++;
长度总分:
%d\n"
scorelen);
//判断分类
int[]flag=newint[5];
//是否存在此类
char[]elem=passwd.toCharArray();
if(elem[i]>
='
a'
elem[i]<
z'
){
System.out.println(elem[i]+"
是小写字母"
flag[1]=1;
}elseif(elem[i]>
0'
9'
是数字"
flag[2]=1;
A'
Z'
是大写字母"
flag[3]=1;
是符号"
flag[4]=1;
intscorefl=flag[1]+flag[2]+flag[3]+flag[4];
类型总分:
scorefl);
//判断是否重复类型
int[]flagcf=newint[1024];
//重复判断
int[]flaglxzs=newint[5];
//类型总数
int[]scorelxzs=newint[5];
//每种类型总数加分
intscorelx=0;
//类型总分