當前位置:首頁 » 編程語言 » java數組合並

java數組合並

發布時間: 2023-02-03 11:47:02

A. java中如何把兩個數組合並為一個

import java.util.Arrays;

//Java中如何把兩個數組合並為一個
public class gog {
public static void main(String[] args) {
String [] str1 = {"J","a","v","a","中"};
String [] str2 = {"如","何","把","兩","個","數","組","合","並","為","一","個"};

int strLen1=str1.length;//保存第一個數組長度
int strLen2=str2.length;//保存第二個數組長度
str1= Arrays.Of(str1,strLen1+ strLen2);//擴容
System.array(str2, 0, str1, strLen1,strLen2 );//將第二個數組與第一個數組合並
System.out.println(Arrays.toString(str1));//輸出數組

}
}

B. java中面向對象要求合並兩個同類型的數組生成一個新數組

參考邏輯
int len1 = array1.length();
int len2 = array2.length();
// 首先,定義一個新的Object數組
Object[] fullArray = new Object[len1 + len2];
// 拷貝數據
for(int i = 0; i < len1; i++) {
fullArray[i] = array1[i];
}
for(int i = len1; i < len1+len2; i++) {
fullArray[i] = array2[i - len1];
}

C. java怎麼將2個數組的數據合並

concat()方法是對字元串的操作,不是對整數或數組。

concat()用法:
String a="abc";
String b="edf";
String c=a.concat(b);
c的值為「abcdef"
數組可以用for循環合並:
public static void main(String[] args){
int a[]={1,7,9,11,13,15,17,19};
int b[]={2,4,6,8,10};
int aL=a.length;
int bL=b.length;
int lenght=aL+bL;
int[] c=new int[lenght];
for(int i=0;i<lenght;i++){
if(i<aL){//
c[i]=a[i];
}
else{
c[i]=b[i-aL];
}
}
for(int i=0;i<c.length;i++){
System.out.print(c[i]+" ");
}
}

D. 編寫JAVA程序,實現兩個數組的合並,並按升序排列合並後的數組

packagetest;

importjava.util.Arrays;
importjava.util.Comparator;

publicclassJButtonTest
{
publicstaticvoidmain(String[]args)
{
int[]arr1={3,1,23};
int[]arr2={27,7,2};
Stringtemp=Arrays.toString(arr1)+Arrays.toString(arr2);
temp=temp.replaceAll("\]\[",",").replaceAll("\s","").replaceAll("[\[\]]","");
String[]result=temp.split("\,");
System.out.println(Arrays.toString(result));
Arrays.sort(result,newComparator<String>()
{
@Override
publicintcompare(Stringo1,Stringo2)
{
inta=Integer.parseInt(o1),b=Integer.parseInt(o2);
if(a>b)
{
return1;
}
elseif(a<b)
{
return-1;
}
else
{
return0;
}
}
});
System.out.println(Arrays.toString(result));
}
}

E. java合並兩個有序數組

package com.lili.test;

import java.util.Random;
import java.util.Arrays;
/**]
* 合並兩數組為一個有序數組
* @作者: lili
* @日期: Nov 9, 2009
*/
public class TestMe {

/**
* @param args
* @throws ParseException
*/
public static void main(String[] args) {

int a[] = new int[6];
int b[] = new int[6];
Random r = new Random();
for (int i = 0; i < a.length; i++) {
a[i] = r.nextInt(100);
}
for (int i = 0; i < b.length; i++) {
b[i] = r.nextInt(100);
}
System.out.println("合並前--------------------------------------");
for (int i = 0; i < a.length; i++) {
System.out.print("A[" + i + "] = " + a[i]+"\t");
}
System.out.println();
for (int i = 0; i < b.length; i++) {
System.out.print("B[" + i + "] = " + b[i]+"\t");
}
System.out.println();
System.out.println("合並前--------------------------------------");
int[] c = concatArray(a, b);
System.out.println("合並後大小:" + c.length);
for (int i = 0; i < c.length; i++) {
System.out.print("c[" + i + "] = " + c[i]+"\t");
if (i % 3 == 0 && i!=0) {
System.out.println();
}
}
}

/**
* 合並兩個 int[]型數組為一個有序數組(升序)
*
* @param aArray
* @param bArray
* @return
*/
public static int[] concatArray(int[] aArray, int[] bArray) {
int[] cArray = null;
/*
* 保證參數的合法證
*/
if (aArray == null || bArray == null) {
return aArray == null ? bArray : aArray;
}
if (aArray != null && bArray != null) {
cArray = new int[aArray.length + bArray.length];
}
/*
* 合並前排序
*/
Arrays.sort(aArray);
Arrays.sort(bArray);
/*
* 各數組 的當前 index
*/
int aArray_index = 0;
int bArray_index = 0;
/*
* 開始合並
*/
for (int i = 0; i < cArray.length; i++) {
if (aArray_index > aArray.length - 1
|| bArray_index > bArray.length - 1) {
break;
} else {
int a = aArray[aArray_index];
int b = bArray[bArray_index];

if (a == getMin(a, b)) {
aArray_index++;

cArray[i] = a;
} else {
bArray_index++;
cArray[i] = b;
}
}
}
/*
* 其中一個數組被合並完畢
*/
if (aArray_index < aArray.length - 1) {
for (int i = aArray_index + bArray.length; i < cArray.length; i++) {
cArray[i] = aArray[aArray_index++];
}
} else if (bArray_index < bArray.length - 1) {
for (int i = bArray_index + aArray.length; i < cArray.length; i++) {
cArray[i] = bArray[bArray_index++];
}
}
return cArray;
}

/**
* 求兩數之間比較小的一個數
*
* @param a
* @param b
* @return
*/
public static int getMin(int a, int b) {
return a - b <= 0 ? a : b;
}
}

F. java,數組拼接,求大神幫忙!

publicstaticvoidmain(String[]args){
Listlist=newLinkedList();
intsize=3;
int[]a={2,5,6,7,9,5,7};
int[]b={1,7,4,3,4};
list.add(a);
list.add(b);
int[]ints=concatArr(list,size);
StringBuilderrs=newStringBuilder();
for(intanInt:ints){
rs.append(anInt+",");
}
System.out.println(rs.substring(0,rs.length()-1));
}

publicstaticint[]concatArr(Listlist,Integersize){
Listrs=newLinkedList();
intcount=list.size();
intindex=0;
while(count>0){
for(Objecto:list){
for(inti=index;i<index+size;i++){
try{
int[]arr=(int[])o;
rs.add(arr[i]);
}catch(Exceptione){
count--;
break;
}
}
}
index+=size;
}
int[]rsArr=newint[rs.size()];
for(inti=0;i<rs.size();i++){
rsArr[i]=(int)rs.get(i);
}
returnrsArr;
}

G. java中怎麼合並兩個數組 簡單明了的

int[]arr1={1,2,3,4,11};
int[]arr2={6,7,8,9,10};
intnewLength=arr1.length+arr2.length;
int[]arr_target=newint[newLength];
//參數:源數組,源數組起始位置,目標數組,目標數組起始位置,復制長度
System.array(arr1,0,arr_target,0,arr1.length);
System.array(arr2,0,arr_target,arr1.length,arr2.length);
//輸出合並後數組
for(inti:arr_target){
System.out.println(i);
}
//排序
Arrays.sort(arr_target);
//輸出排序數組
for(inti:arr_target){
System.out.println(i);
}
//逆序
int[]arr_reverse=newint[newLength];
intflag=0;
for(inti:arr_target){
arr_reverse[newLength-flag-1]=i;
flag++;
}
//輸出逆序數組
for(inti:arr_reverse){
System.out.println(i);
}

數組合並不一定非得遍歷

具體的輸出題主自己再修改吧

H. java編寫合並兩個數組,{1,2,3,4,5} {4,5,6,7,8}

分為兩步:
1.連接兩個數組.
2.清除重復的元素.

import java.util.Arrays;

public class Combine{
public static void main(String[] args){
int a[]={1,2,3,4,5};
int b[]={4,5,6,7,8};

int temp[]=new int[a.length+b.length];

//連接兩個數組
for(int i=0;i<a.length;i++){
temp[i]=a[i];
}
for(int i=0;i<b.length;i++){
temp[a.length+i]=b[i];
}

//連接數組完成,開始清除重復元素
int size=temp.length;
for(int i=0;i<temp.length;i++){
if(temp[i]!=-1){
for(int j=i+1;j<temp.length;j++){
if(temp[i]==temp[j]){
temp[j]=-1;//將發生重復的元素賦值為-1
size--;
}
}
}
}

int[] result=new int[size];
for(int i=0,j=0;j<size && i<temp.length;i++,j++){
if(temp[i]==-1){
j--;
}
else{
result[j]=temp[i];
}
}

//列印結果
System.err.println(Arrays.toString(result));
}
}

I. java兩個數組合並用for循環

//兩個數組
String[] str1 = {"a","b","c"};
String[] str2 = {"d","e","f"};
//創建一個要接收的數組
String[] str3= new String[str1.length+str2.length];
//先把第一個數組放進去
for(int x=0;x<str1.length;x++){

str3[x] = str1[x];
}
for(int y=0;y<str2.length;y++){
str3[str1.length+y]=str2[y];
}
for(int y=0;y<str3.length;y++){
System.out.println(str3[y] + " ");
}
如有幫助請採納(不懂請提問),可以看我主頁,歡迎來交流學習;

J. JAVA怎麼合並兩個數組

三種字元數組合並的方法
publicstaticString[]getOneArray(){
String[]a={"0","1","2"};
String[]b={"0","1","2"};
String[]c=newString[a.length+b.length];
for(intj=0;j<a.length;++j){
c[j]=a[j];
}
for(intj=0;j<b.length;++j){
c[a.length+j]=b[j];
}
returnc;
}
publicstaticObject[]getTwoArray(){
String[]a={"0","1","2"};
String[]b={"0","1","2"};
ListaL=Arrays.asList(a);
ListbL=Arrays.asList(b);
ListresultList=newArrayList();
resultList.addAll(aL);
resultList.addAll(bL);
Object[]result=resultList.toArray();
returnresult;
}
publicstaticString[]getThreeArray(){
String[]a={"0","1","2","3"};
String[]b={"4","5","6","7","8"};
String[]c=newString[a.length+b.length];
System.array(a,0,c,0,a.length);
System.array(b,0,c,a.length,b.length);
returnc;
}

Reference:http://www.cnblogs.com/changhong/articles/2242323.html

熱點內容
cf窗口化源碼 發布:2024-04-24 07:04:33 瀏覽:737
linuxi2c設備 發布:2024-04-24 06:53:50 瀏覽:345
寶馬x5買什麼配置性價比高 發布:2024-04-24 06:45:22 瀏覽:849
最小的編程語言 發布:2024-04-24 06:44:16 瀏覽:816
自動發朋友圈腳本 發布:2024-04-24 06:40:32 瀏覽:153
最早存儲盤 發布:2024-04-24 06:39:54 瀏覽:943
編程題優惠券 發布:2024-04-24 06:29:46 瀏覽:998
在線編程招聘 發布:2024-04-24 06:23:11 瀏覽:68
svn緩存文件 發布:2024-04-24 06:09:53 瀏覽:139
現在的我的世界伺服器推薦 發布:2024-04-24 05:46:39 瀏覽:151