zoukankan      html  css  js  c++  java
  • 寻找最长字符串

    import java.io.File;
    import java.io.FileReader;
    
    import java.io.PrintWriter;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Scanner;
    
    public class findLong {
    
        public static void main(String[] args)
        {
            String now="";
            List<String> l=new ArrayList();
            List<List<String>> ls=new ArrayList<List<String>>();
            int l_i=0,ls_i=0;
            int i=0,t=0,flag=0,max=0;
            try
            {
                File file = new File("test.txt");
                if (file.isFile() && file.exists()) {
                    FileReader fr=new FileReader("test.txt");
                    Scanner in =new Scanner(fr);
                    //读取
                    while(in.hasNext())
                    {
                        now=in.next();
                        System.out.println(now);
                        if(flag==0)
                        {
                            l=new ArrayList();
                            l.add(now);
                            ls.add(l);
                            flag=1;
                        }
                        else
                        {
                            for(i=0;i<ls.size();i++)//遍历所有表
                            {
                                if(ifLian(ls.get(i).get(ls.get(i).size()-1),now))//首尾相连
                                {
                                    l=new ArrayList();
                                    l=ls.get(i);
                                    l.add(now);
                                    ls.set(i, l);
                                }
    
                            }
                            l=new ArrayList();
                            l.add(now);
                            ls.add(l);
                        }
                        
                    }
                    
                    //寻找最大
                    max=ls.get(0).size();
                    for(i=0;i<ls.size();i++)
                    {
                        if(max<ls.get(i).size())
                        {
                            max=ls.get(i).size();
                        }
                    }
                    
                    
                    if (max==1) {
                        System.out.println("当前文件内单词数量为1");
                    }
                    for(i=0;i<ls.size();i++)
                    {
                        for(t=0;t<ls.get(i).size();t++)
                        {
                            System.out.print(ls.get(i).get(t)+" ");
                        }
                        System.out.println();
                    }
                    PrintWriter fw=new PrintWriter("output.txt");
                    for(i=0;i<ls.get(max-1).size();i++)
                    {
                        fw.println(ls.get(i)+" ");
                    }
                    fw.flush();
                    fw.close();
                }
                else {
                    System.out.println("找不到指定的文件");
                }
                //FileReader fr=new FileReader("input2.txt");
                
                //初始化
    
                
            }
            catch(Exception e)
            {
                e.printStackTrace();
            }
            
    
        }
        public static boolean ifLian(String a,String b)//a的结尾与b的开头是否一致   apple
        {
            if(a.charAt(a.length()-1)==b.charAt(0))
            {
                return true;
            }
            else
            {
                return false;
            }
                
                
        }
    
    }
  • 相关阅读:
    Directx 3D编程实例:多个3D球的综合Directx实例
    利用组策略禁用Oultook 各个版本的缓存模式!
    node-mongo-native1.3.19连接mongo的最优方法
    BT5之网络配置
    BT5之配置笔记
    Linux常用命令大全
    Linux下的基本网络配置
    SQLMAP系列教程
    重燃你的PHP安全分析之火
    Metasploit渗透测试魔鬼训练营
  • 原文地址:https://www.cnblogs.com/zhang188660586/p/11062013.html
Copyright © 2011-2022 走看看