本文目錄一覽:
怎麼用java把多個list合併成一個?
下面的例子講了如何合併兩個java list, 用簡單的方法,而不用自己去造輪子,循環list 去做,用如下建檔方法:
import java.util.ArrayList;import java.util.List;public class JoinList {
public static void main(String[] args) {
ListString listA = new ArrayListString(); listA.add(“A”);
ListString listB = new ArrayListString(); listB.add(“B”);
ListString listFinal = new ArrayListString
(); listFinal.addAll(listA); listFinal.addAll(listB);
//same result //ListString listFinal = new ArrayListString
(listA); //listFinal.addAll(listB);
System.out.println(“listA : ” + listA); System.out.println(“listB : ” + listB); System.out.println(“listFinal : ” + listFinal);
}}
你可以看到結果如下:
listA : [A]listB : [B]listFinal : [A, B]
其實最關鍵的就是調用 list 的 addall 方法,apache 的 listUtil , 裡面有個 union 方法,其實也是用的 addall 方法。
JAVA 有沒有ASCII字元編碼一覽表
ASCII(American Standard Code for Information Interchange,美國信息交換標準代碼)是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,並等同於國際標準ISO/IEC 646。
基本上每一種語言都支持,不存在某種語言是否有沒有的問題,詳情可見:
關於JAVA處理字元串
1 【軟體開發】JAVA字元串處理函數列表一覽
Java中的字元串也是一連串的字元。但是與許多其他的計算機語言將字元串作為字元數組處理不同,Java將字元串作為String類型對象來處理。將字元串作為內置的對象處理允許Java提供十分豐富的功能特性以方便處理字元串。下面是一些使用頻率比較高的函數及其相關說明。
作者:淘果兒 2008-7-21 16:31 回復此發言
——————————————————————————–
2 回復:【軟體開發】JAVA字元串處理函數列表一覽
substring()
它有兩種形式,第一種是:String substring(int startIndex)
第二種是:String substring(int startIndex,int endIndex)
concat() 連接兩個字元串
replace() 替換
它有兩種形式,第一種形式用一個字元在調用字元串中所有出現某個字元的地方進行替換,形式如下:
String replace(char original,char replacement)
例如:String s=」Hello」.replace(』l’,』w’);
第二種形式是用一個字元序列替換另一個字元序列,形式如下:
String replace(CharSequence original,CharSequence replacement)
trim() 去掉起始和結尾的空格
valueOf() 轉換為字元串
toLowerCase() 轉換為小寫
toUpperCase() 轉換為大寫
length() 取得字元串的長度
例:
char chars[]={』a’,』b』.』c’};
String s=new String(chars);
int len=s.length();
charAt() 截取一個字元
例:
char ch;
ch=」abc」.charAt(1);
返回值為』b』
getChars() 截取多個字元
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
sourceStart 指定了子串開始字元的下標
sourceEnd 指定了子串結束後的下一個字元的下標。因此,子串包含從sourceStart到sourceEnd-1的字元。
target 指定接收字元的數組
targetStart target中開始複製子串的下標值
例:
String s=」this is a demo of the getChars method.」;
char buf[]=new char[20];
s.getChars(10,14,buf,0);
作者:淘果兒 2008-7-21 16:31 回復此發言
——————————————————————————–
3 回復:【軟體開發】JAVA字元串處理函數列表一覽
getBytes()
替代getChars()的一種方法是將字元存儲在位元組數組中,該方法即getBytes()
例:
String s = 「Hello!你好!」;
byte[] bytes = s.getBytes();
toCharArray()
例:
String s = 「Hello!你好!」;
char[] ss = s.toCharArray();
equals()和equalsIgnoreCase() 比較兩個字元串
regionMatches() 用於比較一個字元串中特定區域與另一特定區域,它有一個重載的形式允許在比較中忽略大小寫。
boolean regionMatches(int startIndex,String str2,int
str2StartIndex,int numChars)
boolean regionMatches(boolean ignoreCase,int startIndex,String
str2,int str2StartIndex,int numChars)
startsWith()和endsWith()
startsWith()方法決定是否以特定字元串開始,endWith()方法決定是否以特定字元串結束
equals()和==
equals()方法比較字元串對象中的字元,==運算符比較兩個對象是否引用同一實例。
例:String s1=」Hello」;
String s2=new String(s1);
s1.eauals(s2); //true
s1==s2;//false
compareTo()和compareToIgnoreCase() 比較字元串
indexOf()和lastIndexOf()
indexOf() 查找字元或者子串第一次出現的地方。
lastIndexOf() 查找字元或者子串是後一次出現的地方。
StringBuffer構造函數
StringBuffer定義了三個構造函數:
StringBuffer()
StringBuffer(int size)
StringBuffer(String str)
StringBuffer(CharSequence chars)
下面是StringBuffer相關的函數:
length()和capacity()
一個StringBuffer當前長度可通過length()方法得到,而整個可分配空間通過capacity()方法得到。
ensureCapacity() 設置緩衝區的大小
void ensureCapacity(int capacity)
setLength() 設置緩衝區的長度
void setLength(int len)
charAt()和setCharAt()
char charAt(int where)
void setCharAt(int where,char ch)
getChars()
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
append() 可把任何類型數據的字元串表示連接到調用的StringBuffer對象的末尾。
例:int a=42;
StringBuffer sb=new StringBuffer(40);
String s=sb.append(」a=」).append(a).append(」!」).toString();
作者:淘果兒 2008-7-21 16:32 回復此發言
——————————————————————————–
4 回復:【軟體開發】JAVA字元串處理函數列表一覽
insert() 插入字元串
StringBuffer insert(int index,String str)
StringBuffer insert(int index,char ch)
StringBuffer insert(int index,Object obj)
index指定將字元串插入到StringBuffer對象中的位置的下標。
reverse() 顛倒StringBuffer對象中的字元
StringBuffer reverse()
delete()和deleteCharAt() 刪除字元
StringBuffer delete(int startIndex,int endIndex)
StringBuffer deleteCharAt(int loc)
replace() 替換
StringBuffer replace(int startIndex,int endIndex,String str)
substring() 截取子串
String substring(int startIndex)
String substring(int startIndex,int endIndex)
java在濟南就業怎麼樣
能拿個四五千不成問題,相對北京來說比較少,但在濟南算可以了,我一個同學也是工作一年多點回去的,拿接近5K。
求下題代碼,java題目。
Java程序:
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* 汽車類
*/
class Car {
/**
* 汽車編號
*/
protected int id = 0;
/**
* 汽車款式
*/
protected String type = null;
/**
* 構造汽車對象
*/
public Car() {
}
/**
* 構造汽車對象
* @param id 汽車編號
* @param type 汽車款式
*/
public Car(int id, String type) {
this.id = id;
this.type = type;
}
/**
* 獲得汽車編號
* @return 汽車編號
*/
public int getId() {
return this.id;
}
/**
* 獲得汽車款式
* @return 汽車款式
*/
public String getType() {
return this.type;
}
}
/**
* 汽車銷售人員類
*/
class Saler {
/**
* 姓名
*/
protected String name = null;
public ListCar cars = new ArrayListCar();
/**
* 構造銷售汽車人員對象
*/
public Saler() {
}
/**
* 構造汽車銷售人員對象
* @param name 姓名
*/
public Saler(String name) {
this.name = name;
}
/**
* 獲得姓名
* @return 姓名
*/
public String getName() {
return this.name;
}
}
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
ListCar allCar = new ArrayListCar(); //待售汽車對象的集合
allCar.add(new Car(1001, “凱越”));
allCar.add(new Car(1002, “凱越”));
allCar.add(new Car(1003, “凱越”));
allCar.add(new Car(1004, “凱越”));
allCar.add(new Car(2001, “君威”));
allCar.add(new Car(2002, “君威”));
allCar.add(new Car(2003, “君威”));
allCar.add(new Car(2004, “君威”));
allCar.add(new Car(2005, “君威”));
Saler saler = new Saler(“張三其”);
int choice = 0;
int type; //銷售車型
int num; //銷售數量
while(true) {
System.out.println(“請選擇銷售方式”);
System.out.println(“按車輛銷售:\t1”);
System.out.println(“按車型銷售:\t2”);
System.out.println(“查看銷售情況:\t3”);
System.out.println(“退出:\t\t0”);
System.out.print(“您的選擇:”);
choice = scan.nextInt();
switch(choice) {
case 0: //退出系統
System.out.println(“退出系統”);
System.exit(0);
break;
case 1: //按車輛銷售
for(Car car : allCar) {
if(! exists(saler.cars, car)) {
saler.cars.add(car);
System.out.printf(“\t售出 %s 1 輛\n”, car.getType());
break;
}
}
break;
case 2: //按車型銷售
System.out.print(“車型(凱越 0/君威 1):”);
type = scan.nextInt();
System.out.print(“銷售數量:”);
num = scan.nextInt();
int c = 0; //實際銷售數量
for(Car car : allCar) {
if(c = num) {
break;
}
if(car.getType().equals(type == 0 ? “凱越” : “君威”) ! exists(saler.cars, car)) {
saler.cars.add(car);
c++;
}
}
if(c num) {
System.out.printf(“\t庫存不足,實際售出 %s %d 輛\n”, type == 0 ? “凱越” : “君威”, c);
}
else {
System.out.printf(“\t售出 %s %d 輛\n”, type == 0 ? “凱越” : “君威”, num);
}
break;
case 3: //查看銷售情況
System.out.println(“\t當前銷售情況一覽”);
System.out.printf(“\t%10s%10s\n”, “汽車款式”, “汽車編號”);
for(Car car : saler.cars) {
System.out.printf(“\t%10s%10d\n”, car.getType(), car.getId());
}
System.out.println(“—————————“);
System.out.printf(“\t小計:\t%d 輛\n”, saler.cars.size());
break;
default:
break;
}
try {
System.in.read();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//判斷car在cars中是否存在
public static boolean exists(ListCar cars, Car car) {
for(Car c : cars) {
if(c.getId() == car.getId()) {
return true;
}
}
return false;
}
}
運行測試:
請選擇銷售方式
按車輛銷售: 1
按車型銷售: 2
查看銷售情況: 3
退出: 0
您的選擇:1
售出 凱越 1 輛
請選擇銷售方式
按車輛銷售: 1
按車型銷售: 2
查看銷售情況: 3
退出: 0
您的選擇:2
車型(凱越 0/君威 1):0
銷售數量:3
售出 凱越 3 輛
請選擇銷售方式
按車輛銷售: 1
按車型銷售: 2
查看銷售情況: 3
退出: 0
您的選擇:3
當前銷售情況一覽
汽車款式 汽車編號
凱越 1001
凱越 1002
凱越 1003
凱越 1004
—————————
小計: 4 輛
請選擇銷售方式
按車輛銷售: 1
按車型銷售: 2
查看銷售情況: 3
退出: 0
您的選擇:0
退出系統
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/248260.html