1

我在从用户可以输入的任何 url 中提取域名时遇到问题。我们必须使用http://www.google.comhttp://amazon.comhttp://mix.wvu.edu来测试我们的程序。

import java.util.Scanner;

    public class lab3 { 

        public static void main( java.lang.String[] args) { 
            System.out.println ("Please enter the URL");
            Scanner in = new Scanner(System.in);
            String Url = in.nextLine(); 
            System.out.println();
        }
    }

到目前为止,这是我所拥有的可悲的 Java,我只是不确定在让用户输入 URL 后下一步是什么!任何帮助都会很棒!

4

3 回答 3

2

使用 java.net.URL 类,您可以初始化它的一个实例并将整个输入字符串传递给构造函数。然后使用 url.getHost() 方法让类为您提取域名。

import java.net.URL;
import java.util.Scanner;

public class lab3 {

    public static void main( java.lang.String[] args) { 
        try {
            System.out.println ("Please enter the URL");
            Scanner in = new Scanner(System.in);
            String input = in.nextLine(); 
            URL url = new URL(input);
            System.out.println(url.getHost());
        } catch(Exception ex) {
            ex.printStackTrace();
        }
    }
}
于 2013-02-07T04:58:04.373 回答
1

您可以考虑查看URI类,特别是 getHost 方法。祝你好运!

于 2013-02-07T02:45:37.200 回答
0

从字符串构造一个类的实例,java.net.URL并使用相关的 getter 来获取宿主组件。详细信息在上面链接的 javadoc 中。(java.net.URI是另一种选择,但如果输入应该是 URL 而不是 URI,那么URL在这种情况下类应该不那么麻烦。)

于 2013-02-07T02:44:22.493 回答