How to get the desired format from ArrayList
import java.net.UnknownHostException;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
public class Test {
final static Logger logger = Logger.getLogger(Test.class);
private static DecimalFormat decimal_inpoints = new DecimalFormat("0.00");
public static void main(String args[]) throws UnknownHostException,
ParseException {
ArrayList<Integer> array_list = new ArrayList<Integer>();
array_list.add(1);
array_list.add(0);
String joinedString = array_list.toString();
System.out.println(joinedString);
}
}
How can I get the output as 1.0
When I used array_list.toString (); its providing putput as [1,0] (array added)
Could you please tell me how to get 1.0 instead of [1.0]
+2
source to share
6 answers
Using Apache Commons Lang :
String join = StringUtils.join(joinList, ",");
Using Java 8
String joined = String.join(",", list);
Using Google Guava (Joiner)
Joiner joiner = Joiner.on(",");
String join = joiner.join(joinList);
Using StringBuilder
StringBuilder builder = new StringBuilder(array_list.size());
boolean isFirst = true;
for (int i : array_list){
if (isFirst) {
builder.append(i);
isFirst = false;
} else {
builder.append(", " + i);
}
}
System.out.println(builder.toString());
+6
source to share
You can create your own class and override the toString method.
import java.util.ArrayList;
public class MyIntegerArrayList extends ArrayList<Integer>
{
@Override
public String toString(){
return super.toString().replace("[","").replace("]","");
}
}
MyIntegerArrayList myIntegerArrayList = new MyIntegerArrayList();
myIntegerArrayList.add(0);
myIntegerArrayList.add(1);
myIntegerArrayList.toString();
+1
source to share
Use StringJoiner
:
import java.util.ArrayList;
import java.util.List;
import java.util.StringJoiner;
public class SOPlayground {
public static void main(String[] args) {
List<Integer> array_list = new ArrayList<>();
array_list.add(1);
array_list.add(0);
StringJoiner sj = new StringJoiner(", ");
array_list.stream().forEach((i) -> {
sj.add(i.toString());
});
System.out.println(sj.toString());
}
}
Output:
1, 0
0
user5547025
source
to share