已知以下两个数组:
String[] arrSrc = {"1.AAAA",
"2.BBBB",
"3.CCCC",
"4.DDDD",
"5.EEEE",
"6.FFFF"};
String[] arrReplace = {"02-03",
"②.KKKK",
"③.YYYY",
"05",
"⑤.XXXX"};
要求变换成:
String[] arrSrc = {"1.AAAA",
"②.KKKK",
"③.YYYY",
"4.DDDD",
"⑤.XXXX",
"6.FFFF"};
String[] arrSrc = {"1.AAAA",
"2.BBBB",
"3.CCCC",
"4.DDDD",
"5.EEEE",
"6.FFFF"};
String[] arrReplace = {"02-03",
"②.KKKK",
"③.YYYY",
"05",
"⑤.XXXX"};
要求变换成:
String[] arrSrc = {"1.AAAA",
"②.KKKK",
"③.YYYY",
"4.DDDD",
"⑤.XXXX",
"6.FFFF"};
解决方案 »
- 大神帮我看一下这个哪错了
- 测试 concurrent可以直接运行啊。但是总是不对不知道为社么啊?
- 请教关于Object的clone方法
- JCreater 编译始终出现 Exception
- 如果设置JApplet所有的button都不可用
- java.lang.UnsatisfiedLinkError: /usr/local/j2sdk1.4.2_05/jre/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No
- 就没人知道吗——JBuilder中调用dll
- 一个Class调用另外一个class的问题
- 寻找<<java2图形设计卷2SWING>>一书源代码和<<java网络高级编程>>一书源代码
- 在MySQL如何实现如:select top 2 * from board; 这样的提取前N条记的功能?
- 请问java如何实现条件编译
- 请问java虚拟主机如何升级?
{
if arrSrc.equal(arrReplace);
else
arrSrc[i]=arrReplace[i];
}我刚学JAVA 有些东西笔记的不太清楚,
而"05"就是用它后面的"⑤.XXXX",来替换arrSrc数组的第五个元素,最后得到一个新的数组。
{
int n=arrSrc.length();
int turn=0,value;
while(turn!=n){
value=Integer.parseInt(arrReplace[turn]);
arrSrc[value]=arrReplace[++turn];
turn++;
}
}
for(int i=0;i<arrReplace.length;i++){
str = arrReplace[i].charAt(0);
if("③".equals(str))
arrstr[i] = arrRepalce [i];
}
根据我的理解写段代码,免得说偶光说8练,^_^
/**
* 数组转换
* @param src String[] 源数数组
* @param rep String[] 替换数组
*/
public static void convertArray(String src[], String[] rep) {
if (src == null || rep == null || src.length == 0 || rep.length == 0) {
return;
} String sa[] = null;
int idx = 0;
for (int i = 0; i < rep.length; ++i) {
sa = rep[i].split("-");
for (int j = 0; j < sa.length; ++j) {
try {
idx = Integer.parseInt(sa[j]);
if (idx > src.length) {
continue;
}
for (int k = idx - 1; k < rep.length; ++k) {
if (rep[k].charAt(0) == 9311 + idx) {
src[idx - 1] = rep[k];
break;
}
}
}
catch (Exception e) {
break;
}
}
}
}test: convertArray(arrSrc, arrReplace);
import java.util.*;
public class Ti{
private static String[] g ={"1.AAAA",
"2.BBBB",
"3.CCCC",
"4.DDDD",
"5.EEEE",
"6.FFFF"};
private static String[] f = {"02-03",
"②.KKKK",
"③.YYYY",
"05",
"⑤.XXXX"};
public static void convert(String[] a, String[] b){
for(int i=0;i<b.length;i++){
String[] s =b[i].split("\\.");
if(s[0].charAt(0)==9312+i){
a[i]=b[i];
}
}
}
public static void main(String[] args){
convert(g,f);
System.out.println(Arrays.toString(g));
}
}