2012年10月30日
問(wèn)題:有兩個(gè)長(zhǎng)度分別為M和N的數(shù)組,用最少的循環(huán)次數(shù)求出他們中的相同元素。
分析:用容器來(lái)解決。將這兩個(gè)數(shù)組分別放在兩個(gè)ArrayList中,再調(diào)用ArrayList的retainAll方法即可。
A.retainAll(B):從A集合中刪除B集合中不包含的元素.
實(shí)現(xiàn)代碼如下:
package com.miaojian.li;
import java.util.ArrayList;
import java.util.Collection;
public class FindFromArray {
public static void main(String[] args) {
int[] array1={1,2,3,4,5,6,7};
int[] array2={2,4,6,8,10,1};
Collection c1=new ArrayList();
Collection c2=new ArrayList();
for(int i=0;i<array1.length;i++) //將array1添加到c1中
{
c1.add(array1[i]);
}
for(int i=0;i<array2.length;i++) //將array2添加到c2中
{
c2.add(array2[i]);
}
c1.retainAll(c2); //從c1集合中刪除c2集合中不包含的元素
System.out.println(c1);
}
}
因此總的循環(huán)次數(shù)是M+N
結(jié)果如下 :
[1, 2, 4, 6]
package com.miaojian.li;
import java.io.File;
public class FileList {
public static void main(String[] args) {
File f= new File("d:/software");//待列出的文件目錄
tree(f,0);
}
private static void tree(File f, int level)
{
String preStr="";
for(int i=0;i<level;i++)
{
preStr+=" ";
}
File[] childs=f.listFiles();
for(int i=0;i<childs.length;i++)
{
System.out.println(preStr + childs[i].getName());
if(childs[i].isDirectory())
tree(childs[i],level+1);
}
}
}
結(jié)果如下圖:
DataBase
Mysql
mysqltoolwin32.rar
MySQL_5.5.20_win32_XiaZaiBa.zip
Oracle
Oracle_client_win32.zip
Toad DBA Suite for Oracle 10.5 Commercial.exe
SqlServer
Power Design
powerdesigner125_eval.exe
SQL Server2000
PERSONAL
AUTORUN.EXE
AUTORUN.INF
AUTORUN.INI
BOOKS
2012年10月29日
package com.miaojian.li;
//測(cè)試static修飾的方法是否可以被復(fù)寫。
public class TT {
public static void getName()
{
System.out.println("TT");
}
public static void main(String[] args) {
TT tt=new TT();
tt.getName();
}
}
class T extends TT
{
public static void getName()
{
System.out.println("T");
}
}
運(yùn)行父類,得到的結(jié)果為:TT
運(yùn)行子類,得到的結(jié)果為:TT
證明staic修飾的方法不能被復(fù)寫。
2012年10月28日
類變量也叫靜態(tài)變量,也就是在變量前加了static 的變量;
實(shí)例變量也叫對(duì)象變量,即沒(méi)加static 的變量;
區(qū)別在于:
類變量和實(shí)例變量的區(qū)別在于:類變量是所有對(duì)象共有,其中一個(gè)對(duì)象將它值改變,其他對(duì)象得到的就是改變后的結(jié)果;而實(shí)例變量則屬對(duì)象私有,某一個(gè)對(duì)象將其值改變,不影響其他對(duì)象;
例:
class A{
static int a = 0; //類變量
public int b = 0; //實(shí)例變量
}
public class Test{
public static void main (String[] args){
A a1 = new A();
A a2 = new A();
a1.a = 3; // 等同于 A.a = 3;
a1.b = 4 ;
System.out.println(a2.a); //結(jié)果為3
//類變量是針對(duì)所有對(duì)象的,所以a1改變a,a2的a也改變
System.out.println(a2.b); //結(jié)果為0
//實(shí)例只改變自身的,所以a1對(duì)象的b改變,不影響對(duì)象a2的b變量
}
}