在C#控制台应用程序中,创建一个数组,数组中有无规律的数字,让后将数组中的值进行拼接,然后输出拼接后的最大值和最小值
// 定义数组
int[] nums = new int[5] { 1, 4, 6, 9, 2 };
// 转换成集合
List<int> lst = new List<int>(nums);
// 排序,默认降序
lst.Sort();
// 输出最小值
var minStr = string.Join("", lst);
// 反序
lst.Reverse();
// 输出最大值
var maxStr = string.Join("", lst);
Console.WriteLine($"最大值:{ maxStr },最小值:{ minStr }");
谢谢,可以使用,但我有个问题转换成集合后面为什么要加(nums)?还有输出最小值,为什么要string.Json("",lst)这个不是转Json格式吗?
@宋人鱼: nums是数组呀,不加怎么转,这个是C#的特性;Join是字符串拼接
@三人乐乐: 好的,知道了,谢谢解答疑惑
@三人乐乐: 我刚刚试了试,你的这个代码仅限于个位数,如果数组中出现了两位数,结果就不对了
@宋人鱼: 两位数就要做拆分了
@三人乐乐: 你的意思是吧两位数分开,然后十位数和别的个位数进行比较看在第几位,然后十位数和个位数进行拼接吗
@宋人鱼: 对,取余
@三人乐乐: 好的,谢谢
var numStrs = nums.sort(num=>num).Select(num=>num.tostring());
var minStr=string.join("",numStrs);
var maxStr=string.join("",numStrs.Reverse());
谢谢,你的代码不是完整的,我看不懂
看你之前的提问都没有结帖啊
– 会长 2年前@会长: 观察入微
– 三人乐乐 2年前@三人乐乐: 不结帖我就不回答,哈哈
– 会长 2年前