[转载] public static void main(String[] args) 隐含了什么?

参考链接: 了解Java中“ public static void main”中的“ static”

public class TestSort {

 

    public static void main(String[] args) {

        // 需要分别用Javac和Java命令行编译和运行

        int[] arr;

        int temp = 0;

        arr = new int [9];

        for (int i = 0; i < arr.length; i++){

            arr[i] = Integer.parseInt(args[i]);

        }

        

        System.out.println("The Orignal Integer Array is:");

        for (int i = 0; i < arr.length; i++){

            System.out.print(arr[i] + " ");

        }

        

        for (int i = 0; i < (arr.length-1); i++){

            for (int j = 0; j < (arr.length - 1); j++){

                if(arr[j] < arr[j+1]){

                    temp = arr[j];

                    arr[j] = arr[j+1];

                    arr[j+1] = temp;

                }

            }

        }

        System.out.print("\n");

        System.out.println("The Sorted Integer Array is:");

        for (int i = 0; i < arr.length; i++){

            System.out.print(arr[i] + " ");

        }

    }

 

public static void main(String[] args)是Java的主函数。参数是一个String类型的数组,后面跟的args看起来是arguments(参数)的简写。 

于是乱搞了一下: 

 

public class Lol {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        for (int i = 0; i < args.length; i++){

            System.out.print(args[i]);

        }

    }

 

}

 

 

中间改过输出方式println改为print。 

很简朴的字符串录入,类似C++的cin。 

java.lang中,提供了这样一些资源: 

 

把一个字符串转为float,long,short,integer等等形式。于是便有了最上的玩具程序。

协同过滤是一种基于用户行为的推荐算法,它通过分析用户的历史行为数据,推荐给用户与其历史行为相似的其他用户或物品。 要使用Mahout实现协同过滤,需要进行以下步骤: 1. 数据准备:准备一个用户-物品评分矩阵,其中每个元素表示用户对物品的评分。这个矩阵可以从历史数据中得到,也可以手动输入。 2. 特征提取:使用Mahout提供的算法,如SVD或PCA,提取用户和物品的隐含特征,以便更好地描述它们的相似性。 3. 相似度计算:计算用户之间或物品之间的相似度,通常使用余弦相似度或皮尔逊相似度等。 4. 推荐生成:根据用户的历史行为和相似度计算,推荐给用户可能感兴趣的物品。 下面是一个简单的协同过滤实现示例: ```java import org.apache.mahout.cf.taste.common.TasteException; import org.apache.mahout.cf.taste.eval.RecommenderBuilder; import org.apache.mahout.cf.taste.impl.eval.AverageAbsoluteDifferenceRecommenderEvaluator; import org.apache.mahout.cf.taste.impl.model.file.FileDataModel; import org.apache.mahout.cf.taste.impl.neighborhood.NearestNUserNeighborhood; import org.apache.mahout.cf.taste.impl.recommender.GenericUserBasedRecommender; import org.apache.mahout.cf.taste.impl.similarity.PearsonCorrelationSimilarity; import org.apache.mahout.cf.taste.model.DataModel; import org.apache.mahout.cf.taste.neighborhood.UserNeighborhood; import org.apache.mahout.cf.taste.recommender.RecommendedItem; import org.apache.mahout.cf.taste.similarity.UserSimilarity; import java.io.File; import java.io.IOException; import java.util.List; public class SimpleCF { public static void main(String[] args) throws IOException, TasteException { // 加载数据 DataModel model = new FileDataModel(new File("data.csv")); // 定义相似度计算方法 UserSimilarity similarity = new PearsonCorrelationSimilarity(model); // 定义用户邻居 UserNeighborhood neighborhood = new NearestNUserNeighborhood(10, similarity, model); // 定义推荐算法 RecommenderBuilder builder = (userId, dataModel) -> { // 基于用户的推荐算法 return new GenericUserBasedRecommender(dataModel, neighborhood, similarity); }; // 计算推荐算法的准确度 AverageAbsoluteDifferenceRecommenderEvaluator evaluator = new AverageAbsoluteDifferenceRecommenderEvaluator(); double score = evaluator.evaluate(builder, null, model, 0.9, 1.0); System.out.println("MAE: " + score); // 生成推荐列表 GenericUserBasedRecommender recommender = new GenericUserBasedRecommender(model, neighborhood, similarity); List<RecommendedItem> recommendations = recommender.recommend(1, 10); for (RecommendedItem recommendation : recommendations) { System.out.println(recommendation); } } } ``` 这个示例使用了基于用户的协同过滤算法,并且使用皮尔逊相似度作为相似度计算方法。其中,data.csv是一个包含用户、物品和评分的数据文件,格式如下: ``` 1,101,5.0 1,102,4.0 2,103,3.0 2,104,2.0 ``` 这个示例首先计算了推荐算法的准确度(MAE),然后生成了用户1的前10个推荐列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值