my text is
---- SınİSırU, SınİUzO puanları azalan :
------ {deneme deneme deneme}{ANYA}{LTD. ŞTİ.}{1.75}{1.25}{14.00}{10.00}{1.75}{1.2}{false}
------ {deneme deneme deneme }{DZLİ}{ ŞTİ.}{1.43}{1.14}{11.43}{9.14}{1.43}{0.57}{false}
------ {deneme deneme deneme }{MEİN}{ ŞTİ.}{1.29}{1.10}{10.29}{8.76}{1.29}{0.55}{false}
------ {deneme deneme deneme }{HAY}{ ŞTİ.}{1.29}{1.10}{10.29}{8.76}{1.29}{0.55}{false}
------ {deneme deneme deneme }{AHAN}{ ŞTİ.}{1.29}{1.10}{10.29}{8.76}{1.29}{0.55}{false}
------ {deneme deneme deneme }{MSA}{ ŞTİ.}{1.29}{1.10}{10.29}{8.76}{1.29}{0.55}{false}
------ {deneme deneme deneme }{Ş}{ ŞTİ.}{1.29}{1.10}{10.29}{8.76}{1.29}{0.55}{false}
------ {deneme deneme deneme }{KO}{. ŞTİ.}{1.25}{1.08}{10.00}{8.67}{1.25}{0.54}{false}
kolon1:1.75,1.43,1.29...
kolon2:1.25,1.14,1.10..
then ı sorted them smallest to bigger.
there are replaced number ı dont want replaced number. for exemaple if my contain text contain 3,3,3,3,3,2,2,2,2,1,1,1,1,1,1
ı want only 1 2 3
public class PointStatue {
private static List<Double> col1 = new ArrayList<Double>();
private static List<Double> col2 = new ArrayList<Double>();
private static List<Double> col3 = new ArrayList<Double>();
private static List<Double> col4 = new ArrayList<Double>();
private static List<Double> col5 = new ArrayList<Double>();
private static List<Double> col6 = new ArrayList<Double>();
private static List<Double> list=new ArrayList<Double>();
private static List<Double> numbers = new ArrayList<Double>();
public static void main(String[] args) throws IOException {
ArrayList<String> puan;
puan = okuDiziyeKoy("C:\\deneme\\HW.txt");
System.out.format("%d kayıt okundu.%n", puan.size());
for (int j = 0; j < puan.size(); j++) {
String point = puan.get(j);
String[] edit = point.split("[\\{\\}\\)]");
for (String s : edit) {
String a = s.replaceAll("[\\}\\-\\>\\>\\]\\[\\#\\*\\{]+", "");
String b = a.replaceAll("[\\.]+", ",");
Scanner scanner = new Scanner(b);
while (scanner.hasNext()) {
if (scanner.hasNextDouble()) {
Double doubleValue = scanner.nextDouble();
numbers.add(doubleValue);
// System.out.println(Arrays.deepToString(numbers.toArray()));
}// if scan end
else {
//if it is string comes value here
String stringValue = scanner.next();
}// if scan end
}// while end
}// for string s
}// for j end
int col=1;
for(int i=0;i<numbers.size();i++)
{
Double rowValue = numbers.get(i);
switch(col)
{
case 1:
col1.add(rowValue);
Collections.sort(col1);
col++;
break;
case 2:
col2.add(rowValue);
Collections.sort(col2);
col++;
break;
case 3:
col3.add(rowValue);
Collections.sort(col3);
col++;
break;
case 4:
col4.add(rowValue);
Collections.sort(col4);
col++;
break;
case 5:
col5.add(rowValue);
Collections.sort(col5);
col++;
break;
case 6:
col6.add(rowValue);
Collections.sort(col6);
col = 1;
break;
}//switch end
}//for i end
System.out.println("kolon1"+col1);
System.out.println("kolon2"+col2);
System.out.println("kolon3"+col3);
System.out.println("kolon4"+col4);
System.out.println("kolon5"+col5);
System.out.println("kolon6"+col6);
}// main end
private static ArrayList<String> okuDiziyeKoy(String dosyaAdı) {
ArrayList<String> dizi = new ArrayList<String>();
try {
FileInputStream fIS;
fIS = new FileInputStream(dosyaAdı);
Reader r = new InputStreamReader(fIS, "ISO-8859-9");
BufferedReader bR = new BufferedReader(r);
String satır;
while ((satır = bR.readLine()) != null) {
dizi.add(satır);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return dizi;
}// okuDiziyeKoyEnd
}// class end
Take a look at TreeSet
:
A NavigableSet implementation based on a TreeMap. The elements are ordered using their natural ordering, or by a Comparator provided at set creation time, depending on which constructor is used.
This should make sure that you have only one of each element and that the list is sorted according to what you need.
simple buddy :)
package com.blogspot.arashmd.examples;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class DupRemove {
public static void main(String...arg){
double val[]={1,4.3,5,2,4,4,4,6.5,2,2,2,2,2,3.5,3.7,4,7,8,9};
for(int i=0;i<val.length;i++){
add(val[i]);
}
Collections.sort(list);
System.out.println(list);
}
static List<Double> list=new ArrayList<>();
public static void add(double d){
if(!list.contains(d)){list.add(d);}
}
}
and with your code business
/*
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class DupRemove {
public static void main(String...arg){
double val[]={1,4.3,5,2,4,4,4,6.5,2,2,2,2,2,3.5,3.7,4,7,8,9};
for(int i=0;i<val.length;i++){
add(val[i]);
}
Collections.sort(list);
System.out.println(list);
}
static List<Double> list=new ArrayList<>();
public static void add(double d){
if(!list.contains(d)){list.add(d);}
}
}
*/
import java.io.IOException;
import java.util.*;
public class PointStatue {
private static List<Double> col1 = new ArrayList<Double>();
private static List<Double> col2 = new ArrayList<Double>();
private static List<Double> col3 = new ArrayList<Double>();
private static List<Double> col4 = new ArrayList<Double>();
private static List<Double> col5 = new ArrayList<Double>();
private static List<Double> col6 = new ArrayList<Double>();
private static List<Double> list=new ArrayList<Double>();
private static List<Double> numbers = new ArrayList<Double>();
public static void main(String[] args) throws IOException {
ArrayList<String> puan;
puan = okuDiziyeKoy("C:\\deneme\\HW.txt");
System.out.format("%d kayıt okundu.%n", puan.size());
Double doubleValue;
for (int j = 0; j < puan.size(); j++) {
String point = puan.get(j);
String[] edit = point.split("[\\{\\}\\)]");
for (String s : edit) {
String a = s.replaceAll("[\\}\\-\\>\\>\\]\\[\\#\\*\\{]+", "");
String b = a.replaceAll("[\\.]+", ",");
Scanner scanner = new Scanner(b);
while (scanner.hasNext()) {
if (scanner.hasNextDouble()) {
doubleValue = scanner.nextDouble();
if(!numbers.contains(doubleValue)){
numbers.add(doubleValue);
}
// System.out.println(Arrays.deepToString(numbers.toArray()));
}// if scan end
else {
//if it is string comes value here
String stringValue = scanner.next();
}// if scan end
}// while end
}// for string s
}// for j end
int col=1;
for(int i=0;i<numbers.size();i++)
{
Double rowValue = numbers.get(i);
switch(col)
{
case 1:
col1.add(rowValue);
col++;
break;
case 2:
col2.add(rowValue);
col++;
break;
case 3:
col3.add(rowValue);
col++;
break;
case 4:
col4.add(rowValue);
col++;
break;
case 5:
col5.add(rowValue);
col++;
break;
case 6:
col6.add(rowValue);
col = 1;
break;
}//switch end
}//for i end
Collections.sort(col1);
Collections.sort(col2);
Collections.sort(col3);
Collections.sort(col4);
Collections.sort(col5);
Collections.sort(col6);
System.out.println("kolon1"+col1);
System.out.println("kolon2"+col2);
System.out.println("kolon3"+col3);
System.out.println("kolon4"+col4);
System.out.println("kolon5"+col5);
System.out.println("kolon6"+col6);
}// main end
try this, it finds duplicate values in all rows, and each row too, works for me :)
/*
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class DupRemove {
public static void main(String...arg){
double val[]={1,4.3,5,2,4,4,4,6.5,2,2,2,2,2,3.5,3.7,4,7,8,9};
for(int i=0;i<val.length;i++){
add(val[i]);
}
Collections.sort(list);
System.out.println(list);
}
static List<Double> list=new ArrayList<>();
public static void add(double d){
if(!list.contains(d)){list.add(d);}
}
}
*/
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class PointStatue {
/*private static List<Double> col1 = new ArrayList<Double>();
private static List<Double> col2 = new ArrayList<Double>();
private static List<Double> col3 = new ArrayList<Double>();
private static List<Double> col4 = new ArrayList<Double>();
private static List<Double> col5 = new ArrayList<Double>();
private static List<Double> col6 = new ArrayList<Double>();
private static List<Double> col7 = new ArrayList<Double>();
private static List<Double> col8 = new ArrayList<Double>();*/
//private static List<Double> list=new ArrayList<Double>();
private static ArrayList<List<Double>> rows=new ArrayList<List<Double>>();
private static List<Double> numbers = new ArrayList<Double>();
private static void okuDiziyeKoy(String path,ArrayList<String> arr) throws Exception{
BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(path)));
//skip the first line
br.readLine();
String g;
while((g=br.readLine())!=null){
arr.add(g);
}
}
public static void main(String[] args) throws Exception {
ArrayList<String> puan = new ArrayList<String>();
okuDiziyeKoy("C:/deneme/HW.txt", puan);
// puan = okuDiziyeKoy("C:\\deneme\\HW.txt");
System.out.format("%d kayıt okundu.%n", puan.size());
Double doubleValue;
for (int j = 0; j < puan.size(); j++) {
List<Double> listToAdd=new ArrayList<Double>();
rows.add(j, listToAdd);
String point = puan.get(j);
//split data(line) by }{
String[] edit = point.split("[}][{]");
for(int l=3;l<edit.length-1;l++){
//parsing String as double
doubleValue=Double.parseDouble(edit[l]);
//check if double value is not exist then add it to list
if(!numbers.contains(doubleValue)){
numbers.add(doubleValue);
}
if(!listToAdd.contains(doubleValue)){
listToAdd.add(doubleValue);
}
}
/* for (String s : edit) {
String a = s.replaceAll("[\\}\\-\\>\\>\\]\\[\\#\\*\\{]+", "");
String b = a.replaceAll("[\\.]+", ",");
Scanner scanner = new Scanner(b);
while (scanner.hasNext()) {
if (scanner.hasNextDouble()) {
doubleValue = scanner.nextDouble();
if(!numbers.contains(doubleValue)){
numbers.add(doubleValue);
}
// System.out.println(Arrays.deepToString(numbers.toArray()));
}// if scan end
else {
//if it is string comes value here
String stringValue = scanner.next();
}// if scan end
}// while end
}// for string s
}// for j end*/
}
Collections.sort(numbers);
System.out.println("Unique values(in all rows): ");
for(Double d :numbers){
System.out.print(d+" ");
}
System.out.println();
/*int col=1;
for(int i=0;i<numbers.size();i++)
{
Double rowValue = numbers.get(i);
switch(col)
{
case 1:
col1.add(rowValue);
col++;
break;
case 2:
col2.add(rowValue);
col++;
break;
case 3:
col3.add(rowValue);
col++;
break;
case 4:
col4.add(rowValue);
col++;
break;
case 5:
col5.add(rowValue);
col++;
break;
case 6:
col6.add(rowValue);
col = 1;
break;
}//switch end
}//for i end*/
/* Collections.sort(col1);
Collections.sort(col2);
Collections.sort(col3);
Collections.sort(col4);
Collections.sort(col5);
Collections.sort(col6);*/
/*System.out.println("kolon1 "+col1);
System.out.println("kolon2 "+col2);
System.out.println("kolon3 "+col3);
System.out.println("kolon4 "+col4);
System.out.println("kolon5 "+col5);
System.out.println("kolon6 "+col6);*/
//sorting each row
for(int i=0;i<rows.size();i++){
Collections.sort(rows.get(i));
}
//showing each row(array)
for(int i=0;i<rows.size();i++){
System.out.println("kolon"+i+": "+rows.get(i));
}
}// main end
}
dup in columns:
/*
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class DupRemove {
public static void main(String...arg){
double val[]={1,4.3,5,2,4,4,4,6.5,2,2,2,2,2,3.5,3.7,4,7,8,9};
for(int i=0;i<val.length;i++){
add(val[i]);
}
Collections.sort(list);
System.out.println(list);
}
static List<Double> list=new ArrayList<>();
public static void add(double d){
if(!list.contains(d)){list.add(d);}
}
}
*/
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class PointStatue {
/*private static List<Double> col1 = new ArrayList<Double>();
private static List<Double> col2 = new ArrayList<Double>();
private static List<Double> col3 = new ArrayList<Double>();
private static List<Double> col4 = new ArrayList<Double>();
private static List<Double> col5 = new ArrayList<Double>();
private static List<Double> col6 = new ArrayList<Double>();
private static List<Double> col7 = new ArrayList<Double>();
private static List<Double> col8 = new ArrayList<Double>();*/
//private static List<Double> list=new ArrayList<Double>();
private static ArrayList<List<Double>> rows=new ArrayList<List<Double>>();
private static List<Double> numbers = new ArrayList<Double>();
private static void okuDiziyeKoy(String path,ArrayList<String> arr) throws Exception{
BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(path)));
//skip the first line
br.readLine();
String g;
while((g=br.readLine())!=null){
arr.add(g);
}
}
public static void main(String[] args) throws Exception {
ArrayList<String> puan = new ArrayList<String>();
okuDiziyeKoy("C:/deneme/HW.txt", puan);
// puan = okuDiziyeKoy("C:\\deneme\\HW.txt");
System.out.format("%d kayıt okundu.%n", puan.size());
Double doubleValue;
for (int j = 0; j < 6; j++) {
rows.add(new ArrayList<Double>());
}
for (int j = 0; j < puan.size(); j++) {
String point = puan.get(j);
//split data(line) by }{
String[] edit = point.split("[}][{]");
for(int l=3;l<edit.length-1;l++){
//parsing String as double
doubleValue=Double.parseDouble(edit[l]);
//check if double value is not exist then add it to list
if(!numbers.contains(doubleValue)){
numbers.add(doubleValue);
}
if(!rows.get(l-3).contains(doubleValue)){
rows.get(l-3).add(doubleValue);
}
}
/* for (String s : edit) {
String a = s.replaceAll("[\\}\\-\\>\\>\\]\\[\\#\\*\\{]+", "");
String b = a.replaceAll("[\\.]+", ",");
Scanner scanner = new Scanner(b);
while (scanner.hasNext()) {
if (scanner.hasNextDouble()) {
doubleValue = scanner.nextDouble();
if(!numbers.contains(doubleValue)){
numbers.add(doubleValue);
}
// System.out.println(Arrays.deepToString(numbers.toArray()));
}// if scan end
else {
//if it is string comes value here
String stringValue = scanner.next();
}// if scan end
}// while end
}// for string s
}// for j end*/
}
Collections.sort(numbers);
System.out.println("Unique values(in all rows): ");
for(Double d :numbers){
System.out.print(d+" ");
}
System.out.println();
/*int col=1;
for(int i=0;i<numbers.size();i++)
{
Double rowValue = numbers.get(i);
switch(col)
{
case 1:
col1.add(rowValue);
col++;
break;
case 2:
col2.add(rowValue);
col++;
break;
case 3:
col3.add(rowValue);
col++;
break;
case 4:
col4.add(rowValue);
col++;
break;
case 5:
col5.add(rowValue);
col++;
break;
case 6:
col6.add(rowValue);
col = 1;
break;
}//switch end
}//for i end*/
/* Collections.sort(col1);
Collections.sort(col2);
Collections.sort(col3);
Collections.sort(col4);
Collections.sort(col5);
Collections.sort(col6);*/
/*System.out.println("kolon1 "+col1);
System.out.println("kolon2 "+col2);
System.out.println("kolon3 "+col3);
System.out.println("kolon4 "+col4);
System.out.println("kolon5 "+col5);
System.out.println("kolon6 "+col6);*/
//sorting each row
for(int i=0;i<rows.size();i++){
Collections.sort(rows.get(i));
}
//showing each row(array)
for(int i=0;i<rows.size();i++){
System.out.println("kolon"+(i+1)+": "+rows.get(i));
}
}// main end
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.