import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class strTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "123";
System.out.println("string is null or empty!"+str.substring(2));//输出是“3” 改为substring(0,1);作用范围为左闭右开;
List<data> arr = new ArrayList<data>();
arr.add(new data(0,0));
arr.add(new data(1,1));
arr.add(new data(2,2));
arr.add(new data(3,0));
arr.add(new data(3,3));
arr.add(new data(4,4));
arr.add(new data(5,5));
//printAll(arr);
System.out.println(arr.get(0).getDataUp()+" "+arr.get(0).getDataDown());
System.out.println(arr.get(1).getDataUp()+" "+arr.get(1).getDataDown());
System.out.println(arr.get(2).getDataUp()+" "+arr.get(2).getDataDown());
System.out.println(arr.get(3).getDataUp()+" "+arr.get(3).getDataDown());
System.out.println(arr.get(4).getDataUp()+" "+arr.get(4).getDataDown());
System.out.println(arr.get(5).getDataUp()+" "+arr.get(5).getDataDown());
System.out.println("changeafter:");
data temp1 = null;
data temp2 = null;
Iterator<data> it = arr.iterator();//获取迭代器
while(it.hasNext())
{
temp1 = it.next();//第一次调用返回第一个元素的引用 并且将引用移动到下一个
if(isSame(temp1,temp2))
{
temp2.setDataDown(temp1.getDataDown());
System.out.println("log:the same is"+temp1.getDataUp());
it.remove();
}
temp2 = temp1;
}
System.out.println(arr.get(0).getDataUp()+" "+arr.get(0).getDataDown());
System.out.println(arr.get(1).getDataUp()+" "+arr.get(1).getDataDown());
System.out.println(arr.get(2).getDataUp()+" "+arr.get(2).getDataDown());
System.out.println(arr.get(3).getDataUp()+" "+arr.get(3).getDataDown());
System.out.println(arr.get(4).getDataUp()+" "+arr.get(4).getDataDown());
System.out.println(arr.get(5).getDataUp()+" "+arr.get(5).getDataDown());
//printAll(arr);
return;
}
static boolean isSame(data Temp0,data Temp1)
{
if((null == Temp0)||(null == Temp1))
{
return false;
}
if(Temp0.getDataUp() == Temp1.getDataUp())
{
return true;
}
return false;
}
static void printAll(List<data> d)
{
Iterator<data> it = d.iterator();
while(it.hasNext())
{
System.out.println(it.next().getDataUp()+it.next().getDataDown());
}
}
}
class data
{
public int dataUp;
public int getDataUp() {
return dataUp;
}
public void setDataUp(int dataUp) {
this.dataUp = dataUp;
}
public int getDataDown() {
return dataDown;
}
public void setDataDown(int dataDown) {
this.dataDown = dataDown;
}
public int dataDown;
data(int dataUp,int dataDown)
{
this.dataUp = dataUp;
this.dataDown = dataDown;
}
import java.util.Iterator;
import java.util.List;
public class strTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "123";
System.out.println("string is null or empty!"+str.substring(2));//输出是“3” 改为substring(0,1);作用范围为左闭右开;
List<data> arr = new ArrayList<data>();
arr.add(new data(0,0));
arr.add(new data(1,1));
arr.add(new data(2,2));
arr.add(new data(3,0));
arr.add(new data(3,3));
arr.add(new data(4,4));
arr.add(new data(5,5));
//printAll(arr);
System.out.println(arr.get(0).getDataUp()+" "+arr.get(0).getDataDown());
System.out.println(arr.get(1).getDataUp()+" "+arr.get(1).getDataDown());
System.out.println(arr.get(2).getDataUp()+" "+arr.get(2).getDataDown());
System.out.println(arr.get(3).getDataUp()+" "+arr.get(3).getDataDown());
System.out.println(arr.get(4).getDataUp()+" "+arr.get(4).getDataDown());
System.out.println(arr.get(5).getDataUp()+" "+arr.get(5).getDataDown());
System.out.println("changeafter:");
data temp1 = null;
data temp2 = null;
Iterator<data> it = arr.iterator();//获取迭代器
while(it.hasNext())
{
temp1 = it.next();//第一次调用返回第一个元素的引用 并且将引用移动到下一个
if(isSame(temp1,temp2))
{
temp2.setDataDown(temp1.getDataDown());
System.out.println("log:the same is"+temp1.getDataUp());
it.remove();
}
temp2 = temp1;
}
System.out.println(arr.get(0).getDataUp()+" "+arr.get(0).getDataDown());
System.out.println(arr.get(1).getDataUp()+" "+arr.get(1).getDataDown());
System.out.println(arr.get(2).getDataUp()+" "+arr.get(2).getDataDown());
System.out.println(arr.get(3).getDataUp()+" "+arr.get(3).getDataDown());
System.out.println(arr.get(4).getDataUp()+" "+arr.get(4).getDataDown());
System.out.println(arr.get(5).getDataUp()+" "+arr.get(5).getDataDown());
//printAll(arr);
return;
}
static boolean isSame(data Temp0,data Temp1)
{
if((null == Temp0)||(null == Temp1))
{
return false;
}
if(Temp0.getDataUp() == Temp1.getDataUp())
{
return true;
}
return false;
}
static void printAll(List<data> d)
{
Iterator<data> it = d.iterator();
while(it.hasNext())
{
System.out.println(it.next().getDataUp()+it.next().getDataDown());
}
}
}
class data
{
public int dataUp;
public int getDataUp() {
return dataUp;
}
public void setDataUp(int dataUp) {
this.dataUp = dataUp;
}
public int getDataDown() {
return dataDown;
}
public void setDataDown(int dataDown) {
this.dataDown = dataDown;
}
public int dataDown;
data(int dataUp,int dataDown)
{
this.dataUp = dataUp;
this.dataDown = dataDown;
}
}
输出:
string is null or empty!3
0 0
1 1
2 2
3 0
3 3
4 4
changeafter:
log:the same is3
0 0
1 1
2 2
3 3
4 4
5 5