如果C#数组总长度确定,但是并未装满元素,如何求其最后一个元素的位置

 我来答
玩转数据处理
推荐于2016-05-08 · 数据处理,Python,dotnet
玩转数据处理
采纳数:1613 获赞数:3794

向TA提问 私信TA
展开全部
string[] aaa = new string[] { "12", "23" };
List<string> ss = new List<string>();
int i = aaa.Length;
int x = ss.Count;
string _aaa = aaa[i - 1];//aaa 最后一个元素值
string _ss = ss[x - 1];//ss 最后一个元素值
追问
如果数组总长度为20,目前里面只有四个元素,但是一直在往里面加元素,但并未放满,怎么求最后一个元素的位置?
追答
string[] aaa = new string[10] { "12", "23", "", "", "", "", "", "", "", "" };
string _aaa = aaa[i - 1];//aaa 最后一个元素值
//第一种方法:(Linq)
var tt = from a in aaa where a != "" select a;
string i2 = tt.ToArray()[tt.Count() - 1];//数组中非""的最后一个元素
//第二种方法:(循环判断)
string lastElement;
foreach (string item in aaa)
{
    if (item != "")
    {
        lastElement = item;
    }
    else
    {
        break;
    }
}
天涯路易2011
2014-12-02 · TA获得超过263个赞
知道小有建树答主
回答量:351
采纳率:0%
帮助的人:247万
展开全部
如果是string数组的话循环,当值不等于String.Empty时就说明有值,然后记录下标。其实可以用动态链表List的,长度可变化
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刷新①丅5e6
2014-12-02 · TA获得超过4333个赞
知道大有可为答主
回答量:1499
采纳率:64%
帮助的人:604万
展开全部
好像没法判断啊,据我个人理解:数组在初始化的时候已经默认在每个位置上填0了,所以你没法判断哪些位置已经填充过元素哪些位置没有填充过元素。

你可以自己定义一个辅助变量来标识你自己最后一个填充元素的位置。
实在不行,就用List的吧,不过效率会差一点,如果数据量太大效率会差的比较多。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式